Android:如何将可滑动屏幕的片段与按钮活动相结合

时间:2014-09-11 09:03:13

标签: android xml android-activity android-fragments swipe-gesture

我试图制作一个具有菜单按钮的可滑动屏幕,例如:订购,搜索等等(想象一下它就像你的Android主屏幕)。如果单击该按钮,将导致其他页面并开始活动。

问题是,我可以使屏幕可以滑动,但是当我点击时,我无法将片段中的按钮连接到另一个java。 如何做到这一点?

这是我的代码:

      public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) 
 {
     View tab2 = inflater.inflate(R.layout.tab_dua, container, false);

     B_vStock = (Button) tab2.findViewById(R.id.BtnStock);
     B_vStock.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent z= new Intent(Tab_Dua.this, View_Stock.class);  ==> error on this
            startActivity(z);
        }
    });

可滑动布局(XML)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <TableLayout 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:gravity="center">

        <TableRow 
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:layout_marginBottom="20dp"
            android:layout_weight="20"
            android:gravity="center">

            <ImageButton 
                android:src="@drawable/ord"
                android:id="@+id/img_up_order"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginRight="30dp" />

            <ImageButton 
                android:src="@drawable/stock"
                android:id="@+id/BtnStock"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"/>

        </TableRow>
    </TableLayout>
</LinearLayout>

1 个答案:

答案 0 :(得分:0)

Intent z= new Intent(Tab_Dua.this, View_Stock.class);

假设Tab_Dua是Fragment,您无法执行此操作,the constructor of Intent将不接受Fragment,需要Context。你可以这样做:

Intent z= new Intent(Tab_Dua.this.getActivity(), View_Stock.class);