如何在片段中为添加/删除节点(带有grathstream)创建触摸事件?

时间:2019-03-23 00:36:41

标签: java android graphstream

我正在创建一个创建图形(节点和边缘)的应用程序,我想实现一个touch方法来创建该节点,但是我遇到了困难,因为当我触摸画布以添加节点时,它并没有工作,但是如果我单击活动的底部菜单,则工作

我尝试实现View.OnTouchListener,但是这无法识别我在其中显示图形的片段所在的FrameLayout中的触摸。

我的活动:

<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<FrameLayout
  android:id="@+id/layoutFragment"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:layout_above="@+id/bottomNavView"
  android:layout_alignParentStart="true"
  android:layout_alignParentTop="true"
  android:layout_alignParentEnd="true">

<fragment
  android:id="@+id/fragment_tag"    
  android:name="org.graphstream.ui.android_viewer.util.DefaultFragment"
  android:layout_width="match_parent"
  android:layout_height="match_parent" />

</FrameLayout>

<include
   android:id="@+id/bottomNavView"
   layout="@layout/bottom_nav_view" />
</RelativeLayout>

这是我的java(我试图触摸屏幕并显示敬酒):

    public class FragmentGrafo extends Fragment{

    @Override
     public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup 
    container, Bundle savedInstanceState) {
        final View view = inflater.inflate(R.layout.grafo_fragment, 
    container, false);

        view.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                 if (event.getAction() == MotionEvent.ACTION_DOWN){
                    Toast.makeText(getActivity(), "Não pode mais add 
     nós", 
     Toast.LENGTH_SHORT).show();
                }
                return true;
            }
        });

        return view;
    }

希望我可以触摸屏幕并添加节点,或者单击并删除否,选择节点1,然后选择节点2并创建一条边线

0 个答案:

没有答案