0

私は以前に何度もやったようにActivity、3つの別々のセットで3つのボタンを持っています。onClickListenersしかし、リスナーの1人がクリックイベントに反応せず、その理由がわかりません。コードセグメントは次のとおりです。

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.edit_reminder_2);

    //References to layout resources
    edit2Back = (Button) findViewById(R.id.edit2Back);
    edit2Next = (Button) findViewById(R.id.edit2Next);
    edit2ChangeGPS = (Button) findViewById(R.id.edit2ChangeGPS);

    //Assigning listeners to Buttons
    edit2Back.setOnClickListener(listenerBack);
    edit2Next.setOnClickListener(listenerNext);
    edit2ChangeGPS.setOnClickListener(listenerChange);

}

final OnClickListener listenerNext = new OnClickListener() {

    public void onClick(View v) {
        Log.v("edit2Next","Click!");
        db.open();

        String sName = edit2ReminderName.getText().toString();
        String sNote = edit2ReminderText.getText().toString();
        int sRadius = Integer.parseInt(edit2Radius.getText().toString());
        String sUnits = (String) edit2SpinnerUnits.getSelectedItem();
        int sChecked = 0;
        if (edit2Check.isChecked()) {
            sChecked = 1;
        }

        db.insertReminder(sName, sNote, lat, lon, sRadius, sUnits, sChecked);

        db.close();

        Intent intent = new Intent(context, Reminders.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
    }

}; 

私が同じ方法で書いた他のすべてのリスナーは完全に正常に機能しますが、これはそうではありません。コード全体を見ましたが、理由が見つかりませんでした。Log.v命令も実行されず、リスナーはまったく起動しません。アドバイスありがとうございます!

編集:

これは、私が自分のButtons:を定義するXMLコードの一部です。

<LinearLayout 
    android:id="@+id/edit2ControlLayout"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:background="@color/azure"
    android:padding="15dp"
    android:orientation="horizontal" >

    <Button 
        android:id="@+id/edit2Back"
        android:layout_height="wrap_content"
        android:layout_width="0.0dip"
        android:text="Back"
        android:background="@drawable/round_button_violet"
        android:textColor="@color/azure"
        android:paddingTop="10dp"
        android:paddingBottom="10dp"
        android:layout_weight="1.0"
        android:layout_marginRight="5dp" />

    <Button 
        android:id="@+id/edit2Next"
        android:layout_height="wrap_content"
        android:layout_width="0.0dip"
        android:text="Next"
        android:background="@drawable/round_button_violet"
        android:textColor="@color/azure"
        android:paddingTop="10dp"
        android:paddingBottom="10dp"
        android:layout_weight="1.0"
        android:enabled="false" />        


</LinearLayout>
4

1 に答える 1

1

次のボタンを機能させるには、次のボタンコードのandroid:enabled="false"を削除してください。

<Button 
    android:id="@+id/edit2Next"
    android:layout_height="wrap_content"
    android:layout_width="0.0dip"
    android:text="Next"
    android:background="@drawable/round_button_violet"
    android:textColor="@color/azure"
    android:paddingTop="10dp"
    android:paddingBottom="10dp"
    android:layout_weight="1.0"
    android:enabled="false" /> 
于 2012-08-22T17:46:49.780 に答える