在我的主视图中,我有:
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类相关联?
答案 0 :(得分:46)
说新的xml文件是foo.xml
:
foo.xml
文件放入res/layout
目录。setContentView(R.layout.foo);
另请参阅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。 布局不接受上限,我遇到了同样的问题。