私は簡単な例で変数の範囲を理解しようとしています。 は、私は私がクリックリスナーメソッドからマルチテキスト文字列にアクセスすることができますどのようにこのコードJava変数スコープグローバル
package com.varialescope.examplevariablescope;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private Button buttonOne;
private Button buttonTwo;
private String mText = "Hello World";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Initialialize UI elements
buttonOne = (Button) findViewById(R.id.button_one);
buttonOne = (Button) findViewById(R.id.button_two);
//Button One click listener
buttonOne.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//Set new text
mText = "ONE";
Toast.makeText(MainActivity.this, mText, Toast.LENGTH_SHORT).show();
}
});
//Button Two click listener
buttonTwo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(MainActivity.this, mText, Toast.LENGTH_SHORT).show();
}
});
}
}
を助ける必要がありますか?
mTextをクリックしてグローバルにアクセスできるようにするにはどうすればよいですか?
問題は何ですか? 'OnClickListener'の中から' mText'にアクセスしていませんか? – Onik
すでに 'mtext'にアクセスしていますが、明示したい場合は、次のように修飾してください:' MainActivity.this.mText' – Andreas
アプリケーションを実行できますか?私はあなたがそれを始めるとすぐにクラッシュするはずだと強く信じている。 –