2

ボタンを使用してxmlレイアウト/ビューを変更したい(表示されているページを正確に何と呼んでいますか)。私は、約 5 または 6 ページの多くのページを特徴とするアプリを開発しました。ボタンでページに進み、別のボタンで前のページに戻ることができる必要があります。

ボタン 1 は進むボタンです

ボタン 2 は戻るボタンです。

ボタン 3 はリセット ボタンです (最初のページに戻ります)。

よろしくお願いします!

4

3 に答える 3

1

ビューごとにアクティビティを作成するか、flipviewer を実装することができます

サンプル レイアウト:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button android:id="@+id/flip_me"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Flip Me!"
/>
<ViewFlipper android:id="@+id/details"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textColor="#FF00FF00"
android:text="This is the first panel"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textColor="#FFFF0000"
android:text="This is the second panel"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textColor="#FFFFFF00"
android:text="This is the third panel"
/>
</ViewFlipper>
</LinearLayout>

サンプル活動:

public class FlipperSample extends Activity {

 ViewFlipper flipper;

 @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        setContentView(R.layout.main);

        flipper=(ViewFlipper)findViewById(R.id.details);

        Button btn=(Button)findViewById(R.id.flip_me);

        btn.setOnClickListener((View.OnClickListener) new flipMyView());

    }

 class flipMyView implements View.OnClickListener {
  public void onClick(View view) {
   flipper.showNext();
  }
 }
}
于 2012-11-06T08:03:01.447 に答える
0

を使用しsetContentView(R.layout.newLayout)てレイアウトを変更します ボタンで、このように異なるレイアウトファイルで をonClick呼び出しますsetContentView

Button btn1 = (Button) findViewById(R.id.button1);
    btn1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            setContentView(R.layout.newLayout);
        }
    });

注:このようにすると、そのビューにその要素がない場合findViewById(R.id.button1)に作成されるため、注意してくださいNullPointerException

于 2012-11-06T08:08:39.830 に答える
0

ViewFlippers を使用するか、ボタンのクリック時にアクティビティにレイアウトを設定できます...

于 2012-11-06T08:03:48.043 に答える