这是我的第一个问题,但我一直在阅读这里的很多帖子,试图做到这一点。但我只是无法弄明白!所以我希望得到帮助!
我在Android应用程序上工作,我在自动填充字段中输入搜索词。从这里我希望应用程序更改为另一个布局xml文件,其中包含结果的列表视图。单击某个项目时,它将转到另一个布局xml文件。
我已经准备好了所有的http帖子和功能,但是让我头疼的是交换布局部分。到目前为止我一直在尝试这个:
setContentView(R.layout.newlayout);
它的工作方式应该如此,它确实改变了布局,但却改变了问题。 如果我按下手机上的后退按钮,它只会关闭应用程序,而不是回到之前的布局。如果我创建一个后退按钮并将其设置为onclick来执行
setContentView(R.layout.previouslayout);
它会返回到另一个布局,但它不会保留搜索表单中的输入数据,而且它不会重新加载用于获取自动完成的标记的函数。大问题!
我猜测,我必须使用某种意图或活动管理器,但我不知道它是如何工作的,以及如何将数据与我的列表视图的新活动的开始一起发送产品观点?
我希望你理解我的问题,并且你有时间帮助我。
致以最诚挚的问候,谢谢。 纳斯
答案 0 :(得分:1)
要显示其他布局,您应该在活动中使用call startActivity。要在调用中放入数据,请使用putExtra:
int value = 1;
Intent i = new Intent(this, Test.class);
i.putExtra("var", value);
startActivity(i);
您还应该为每个布局创建一个类,并使用setContentView选择正确的布局:
public class Test extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
int var2 = (int)getIntent().getExtras().get("var");
setContentView(R.layout.newlayout);
...
}
}
答案 1 :(得分:0)
尽管使用了意图或其他活动,您也可以使用ViewFlipper。