如何将布局视图与活动相关联

时间:2010-02-04 10:09:27

标签: android android-activity layout

在我的主视图中,我有:

public class PlayersActivity extends Activity {
    ViewFlipper flipper;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.playercontainer);
        flipper = (ViewFlipper) findViewById(R.id.flipper);
    }
}

有了这个观点:

<ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/flipper"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <include android:id="@+id/first"  layout="@layout/first" />
    <include android:id="@+id/second"  layout="@layout/playerdetailsview" />
</ViewFlipper>

它正确显示了第一个视图,但是我希望它连接到java类,所以我创建了一个FirstActivity类,我可以在第一个视图中控制所有组件 但是如何将first.xml布局与FirstActivity java类相关联?

4 个答案:

答案 0 :(得分:46)

说新的xml文件是foo.xml

  1. foo.xml文件放入res/layout目录。
  2. 在新课程中使用setContentView(R.layout.foo);
  3. manifest file
  4. 中指定新课程

    另请参阅declaring layout上的主题。

答案 1 :(得分:6)

1)创建一个xml文件(比如foo.xml) 2)将foo.xml放在res/layout目录中 3)编辑foo.xml并放置一些android布局代码并保存。如,

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent" 
              android:layout_height="fill_parent" 
              android:orientation="vertical" >
    <ViewFlipper android:id="@+id/viewFlipper1" 
                 android:layout_width="match_parent" 
                 android:layout_height="wrap_content"></ViewFlipper>
</LinearLayout>

4)在你的新活动课程中

setContentView(R.layout.foo);

用于创建活动see this answer

我猜你的xml文件存在的问题是你没有为活动指定任何布局。

答案 2 :(得分:3)

连接2个布局并不困难:

@Override
    public void onClick(View args0) {
    setContentView(R.layout.aardelayout);
}

答案 3 :(得分:0)

将名称从FirstActivity更改为firstactivity。 布局不接受上限,我遇到了同样的问题。