今天,我尝试创建一个包含片段活动的项目。我有一个MainActivity范围FragmentActivity。 MainActvity具有布局。

activity_main.xml:

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

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button" />

        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button1" />

    </LinearLayout>

    <View
        android:layout_width="match_parent"
        android:layout_height="2dip"
        android:background="#000" />

    <FrameLayout
        android:id="@+id/frame_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </FrameLayout>

</LinearLayout>


布局有2个按钮,在此处有一个用于替换Fragment的FrameLayout。在MainActivity onCreate中,我插入一个片段。

MainAcivity.java

public class MainActivity extends FragmentActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);
        ((Button) findViewById(R.id.button1)).setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                Log.e("Button", "click--------------");
            }
        );
        getSupportFragmentManager().beginTransaction().replace(R.id.frame_layout, fragment).addToBackStack(null).commit();
    }
}


当我将片段插入R.id.frame_layout时,我尝试触摸button1,但它没有响应。我在logcat中看不到它

请帮我!谢谢

最佳答案

在片段中使用此:

您的XML:

  <Button
            android:id="@+id/btnLogin"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:onClick="yourmethod"
            android:text="Login" />


您的代码:

  public void yourmethod(View v){
    //dosomthing
 }

关于android - FragmentActivity上的按钮不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16834982/

10-11 14:25