0

私は現在、最初のAndroidアプリを始めたばかりです

ほとんどのアプリと同様に、画面に触れるとすぐにメニューに入るスタート画面があります。

私が持っている質問は、現在表示されている画面に基づいて OnTouchEvent() にタッチ アクションを登録するための最良の方法は何かということです。

表示されている内容に基づいて switch または if/else ステートメントを配置する方がよいでしょうか、それともより良い方法がありますか?

わかりやすくするために編集: たとえば、アプリを起動すると、タイトル画面が読み込まれるとします。タイトル画面の任意の場所をタッチすると、メニュー ボタンがたくさんある最初のページが読み込まれます。

OnTouchEvent() には、「どこかをタッチすると最初の画面が表示される」というコードが含まれます。

私が欲しいのは、メニュー画面が現在タイトル画面ではなく画面に表示されていることです。「どこかをタッチすると最初の画面が表示される」ということはもうしたくありません。代わりに、ボタンのタイトルに基づいてさまざまなアクションを実行したいと思います。したがって、OnTouchEvent() で何が起こるかを変更する必要があります。

だから私が求めているのは、OnTouchEvent() に if/else ステートメントをたくさん入れたほうがよいでしょうか、それともこれを行うためのより良い方法があるでしょうか?

4

1 に答える 1

0

どうぞ。

main.xml レイアウト。例: main.xml

<LinearLayout android:id="@+id/mainLayout"
 xmlns:android="http://schemas.android.com/apk/res/android"

  android:layout_width="match_parent"
  android:layout_height="match_parent" >

  // your other views ....

  </LinearLayout>

あなたの活動

public class MyActivity extends Activity implements OnTouchListener 
{ 

@Override
public void onCreate(Bundle savedInstanceState) 
   { 
   super.onCreate(savedInstanceState); 

   setContentView(R.layout.main); 

   findViewById(R.id.mainLayout).setOnTouchListener(this);

   } 

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

      // do whatever you want
   } 
 } 
于 2013-05-23T16:32:53.127 に答える