0

トグルボタン付きのAndroidアプリを書いたのですが、最初はトグルボタンがうまく動きません。しかし、チェックを外して再度試すと、その後は正常に動作しています。

コードの下にリストしました。

初めてアクティベートするには、どのコードを追加する必要がありますか?

public class MainActivity extends Activity{

private ToggleButton togg;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    togg = (ToggleButton) findViewById(R.id.toggleButton1);
    }
public void nameOfMethod(View v){

    togg.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (togg.isChecked()) {
                //Toast.makeText(MainActivity.this, "Servise bağlanılıyor...", Toast.LENGTH_SHORT).show();
                new Thread(new ClientThread()).start();
            } else {
                Toast.makeText(MainActivity.this, "Bağlantı sonlandırılıyor...", Toast.LENGTH_SHORT).show();
            }
        }
    });
}

.xml ファイル内:

<ToggleButton
    android:id="@+id/toggleButton1"
    android:layout_width="120dp"
    android:layout_height="60dp"
    android:layout_below="@+id/textView1"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="20dp"
    android:onClick="nameOfMethod"
    android:textOn="Bağlantıyı bitir"
    android:textOff="Bağlantıyı başlat" />

編集:それはそのようにうまく動作します:

public class MainActivity extends Activity{

private ToggleButton togg;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    togg = (ToggleButton) findViewById(R.id.toggleButton1);

    togg.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            if (togg.isChecked()) {
                //Toast.makeText(MainActivity.this, "Servise bağlanılıyor...", Toast.LENGTH_SHORT).show();
                new Thread(new ClientThread()).start();
            } else {
                Toast.makeText(MainActivity.this, "Bağlantı sonlandırılıyor...", Toast.LENGTH_SHORT).show();
            }
        }
    });
}

setOnClickListener メソッドを onCreate(Bundle savedInstanceState) に移動し、.xml ファイルの android:OnClick メソッドを削除すると...

4

2 に答える 2