1

関数内のデータの一貫性について少し質問がありonCreate()ます。私の例をよりよく理解するために:

public class Test extends Activity {

    public String isThisConsistent1;
    public int isThisConsistent2;

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.Test, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case R.id.Item_1:
            getSomething();
            return true;
        default:
            return super.onOptionsItemSelected(item);
        }
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.Test);

        /*Very, very long taking code like a huge loop */

        isThisConsistent1 = ...;
        isThisConsistent2 = ...;
    }

    private void getSomething(){
        String test1 = isThisConsistent1;
        int test2 = isThisConsistent2;
    }
}

だから私の質問は:onCreate()関数が終了する前に、私の ActionBar のアイテムをクリックすることは可能ですか? getSomething()その場合、データが関数に設定される前に関数を呼び出すためonCreate()です。

4

1 に答える 1