我想在我的应用中有80个页面,看起来像下面的代码。我可以通过两个按钮从一个页面转到下一个页面。因为我不想创建80个活动,所以我必须在一个活动中连接80个页面。这有什么作用?
package com.example.xxx;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
public class PictureOne extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.pictureone);}
public void Picture0 (View view){
Intent i = new Intent(this, PageZero.class);
startActivity(i);}}
public void Picture2 (View view){
Intent i = new Intent(this, PageTwo.class);
startActivity(i);}}
XML:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_centerInParent="true"
android:layout_marginLeft="14dp"
android:src="@drawable/pic1" />
<ImageView
android:id="@+id/imageView4"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:src="@drawable/left"
android:onClick="Picture0"/>
<ImageView
android:id="@+id/imageView4"
android:layout_width="100dp"
android:layout_height="100dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:src="@drawable/right"
android:onClick="Picture2"/>
</RelativeLayout>
答案 0 :(得分:0)
80页 - &gt; 80个活动,这是一个非常糟糕的主意,因为它将无需加载资源。
我建议你看一下ViewPager
小部件(使用轻扫手势,在“页面”的概念中真的更好)并使用{{1}在单个类中以编程方式创建页面。
我通常会创建一个对象类,其中包含我需要的所有属性和custom adapter
。喜欢这个
implement Fragment
然后我的适配器:
public class QuestionStack extends Fragment {
private String textQuestionStack;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.question_row, container, false);
TextView messageTextView = (TextView) v.findViewById(R.id.title);
messageTextView.setText(textQuestionStack);
return v;
}
}
public class QuestionStackAdapter extends FragmentPagerAdapter {
private List<Fragment> fragments;
public QuestionStackAdapter (FragmentManager fm, List<Fragment> fragments) {
super(fm);
this.fragments = fragments;
}
@Override
public Fragment getItem(int position) {
return this.fragments.get(position);
}
@Override
public int getCount() {
return this.fragments.size();
}
}
类中的viewpager
对象:
activity
现在你需要尝试一下:)