【发布时间】:2016-03-18 20:15:20
【问题描述】:
是否可以在主活动中以及用户点击时有一个按钮 它,片段布局会出现吗?我是 Android Studio 的新手。如果可能的话 你觉得你可以给我举个例子吗?
【问题讨论】:
标签: android android-fragments android-studio
是否可以在主活动中以及用户点击时有一个按钮 它,片段布局会出现吗?我是 Android Studio 的新手。如果可能的话 你觉得你可以给我举个例子吗?
【问题讨论】:
标签: android android-fragments android-studio
它应该类似于链接中提供的描述,只是将按钮添加到活动而不是本示例中的片段 Button Click inside Fragment to open up new fragment
【讨论】:
你可以像这个例子一样直接从主要活动中使用它:
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/root_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
>
<Button
android:id="@+id/button"
android:layout_width="100dp"
android:layout_height="50dp"
android:text="Click me"
/>
</LinearLayout>
MainActivity.java
public class MainActivity extends AppCompatActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.root_layout, new NewFragment());
transaction.commit();
//button.setVisibility(View.GONE);
}
});
}
}
NewFragment 只是一个黑色片段。
问题是LinearLayout被替换了,但是按钮没有:
因此您可以设置可见性(如代码中的注释)。但我建议创建 2 个片段,一个带有按钮,一个带有您的内容。然后在activity的onCreate()方法中,可以设置第一个fragment,稍后再用另一个替换。
【讨论】: