1

我试图从 layout2(包含 8 个图像按钮)导航到 Layout2(这是一个 ImageView),但我仍然无法连接到所需的布局。我猜代码中有一些滞后,但无法获取缺失的条件。

我当前的布局是explored_homie.xml

Layout2 Java 代码:

setContentView(R.layout.explored_homie);
gallery1 = (ImageButton)findViewById(R.id.gallery1);

gallery1.setOnClickListener(new OnClickListener() {

    public void onClick(View v) {
        switch (v.getId()) {
          case R.id.gallery1:
               setContentView(R.layout.gallery_layout);
               break;
         case R.id.upcoming1:
             setContentView(R.layout.rough);
             break;

这应该调用以下布局:gallery_layout.xml

Layout1 仅包含一个图像按钮,单击该按钮,将带我到explored_homie layout2,它再次包含 8 个图像按钮,我试图从上面的 layout2(explored_homie) 访问按钮库(id:galler1),但我仍然无法导航到所需的页面,谁能帮我解决这个问题?

4

2 回答 2

1

在活动中多次调用 setcontentview 是一种不好的做法。简单的方法是将两种布局放在同一个 xml 中,其中一个处于可见性消失,并在需要时切换可见性。当然,这是一种丑陋的方式,更优雅的方式是使用某种视图切换器或 Fragments API(为每个布局创建两个片段并使用 FragmentManager 更改视图)

于 2012-10-02T18:24:11.950 回答
0

您应该使用 LayoutInfalter 类而不是这样做。然后,如果您想删除视图,请在代码中使用 removeView() 方法。

于 2012-10-02T18:38:24.603 回答