0

別のアクティビティを開始せずに、Android で動的にビューを変更する方法をテストしたかったのです。

だから私はこのコードを書き、OnTouchListener と OnClickListener を一緒に実装するたびにクラッシュしましたが、そのうちの 1 つだけを使用した場合は正常に動作しました (ただし、やりたいことは実行されませんでした)。

public class Test extends Activity implements OnTouchListener, OnClickListener {

ImageView image;
Button ret;

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

    image = (ImageView) this.findViewById(R.id.image01);
    ret = (Button) this.findViewById(R.id.ret);

    image.setOnTouchListener(this);
    ret.setOnClickListener(this);
}

@Override
public boolean onTouch(View v, MotionEvent event) {

    int action = event.getAction();

    switch(action)
    {
    case MotionEvent.ACTION_DOWN:
        setContentView(R.layout.returnd);
        break;
    }

    return true;
}

@Override
public void onClick(View v) {

    setContentView(R.layout.displaytest);
}

}

基本的に、私は写真を表示したかっただけで、ユーザーがそれに触れたときにビューを変更して、メイン ビューに戻るためのボタンを表示します。

ちなみに私はAndroid初心者なので、かなりダサいエラーだと思います。助けていただければ幸いです。ありがとう

4

3 に答える 3

0

スタック トレース (logcat) がなければ、質の高い回答は得られません。

ところで: 新しいレイアウト = 新しいアクティビティ (またはフラグメント)。 setContentView() ではありません

限目。

于 2013-07-04T19:29:48.123 に答える