Android 优先片段显示
我不熟悉碎片概念。在我的应用程序中,我必须保存用户首选项。我经历过。 准备了我的首选项xml文件和首选项片段文件。到目前为止一切都很好。 我的问题是,我必须在我的Android 优先片段显示,android,Android,我不熟悉碎片概念。在我的应用程序中,我必须保存用户首选项。我经历过。 准备了我的首选项xml文件和首选项片段文件。到目前为止一切都很好。 我的问题是,我必须在我的main活动的onCreate()方法中添加以下代码 getFragmentManager().beginTransaction() .replace(android.R.id.content, new SettingsFragment()) .commit(); 它显示在主屏幕上。但是
main活动的onCreate()方法中添加以下代码
getFragmentManager().beginTransaction()
.replace(android.R.id.content, new SettingsFragment())
.commit();
它显示在主屏幕上。但是我想用按钮点击的方法来启动它
onSettingsClicked(){
// launch preferces screen
}
我想把它显示为一个单独的屏幕。我该怎么做?您需要实现碎片事务的概念。
你需要做以下几件事-
创建一个新的Fragment.xml以显示按钮
从onCreate()调用新片段李>
获取片段视图上的按钮李>
在按钮onclick listener上,将片段替换为setingfragment()。
完成了李>
退房,它会指引你-
是否进行以下更改,如-
// Code not accurate, may be some syntax error
@Override
public void onCreate()
{
// super and other stuff
getFragmentManager().beginTransaction()
.replace(android.R.id.content, new NewFragment())
.commit();
Button btn = (Button)findViewById(R.id.button01);
btn.setOnClickListener(new OnClickListener(){
@override
public void onClick(View v)
{
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(android.R.id.content, new new SettingsFragment())
.commit();
}
});
}
您可以使用preferenceFragement,而不是使用fragementTransaction:
顺便说一句,看起来不错。此片段正在添加到当前活动中。但我想显示此首选项,因为SubActivityFragment始终添加到当前活动中。片段就是为了这个目的而设计的。您可以通过正确定义主布局来完成所需的工作。在主布局中添加
标记。显示子视图。你明白我的意思了吗?明白了。。所以我会把这个片段隐藏起来。然后单击按钮,我将向用户显示它。我说得对吗?