0

インテント(ディレクトリピッカー)の終了後にテキストを変更するテキストビューを取得しましたが、機能しません。コードは次のとおりです。

text = (TextView) findViewById(R.id.choose3);
        text.setText(globalconstant.path);

インテントがパスを返すときにテキストを変更する必要があります。

private void addListenerOnButton() {
        choose_button = (Button) findViewById(R.id.button1);
        choose_button.setEnabled(true);
        choose_button.setOnClickListener(new OnClickListener() {
            public void onClick(View arg0) {
                // DirectoryPicker.START_DIR = "/mnt/";
                Intent intent = new Intent(settings.this, DirectoryPicker.class);
                startActivityForResult(intent, DirectoryPicker.PICK_DIRECTORY);
                // text.setText(globalconstant.path);
                text = (TextView) findViewById(R.id.choose3);
                text.setText(globalconstant.path);
                ;

            }
        });

    }

どうしたの?私を助けてください!どうもありがとうございました

4

3 に答える 3

3

おそらく、テキストを変更する必要がありますonActivityResult

于 2012-09-12T19:09:40.770 に答える
0

あなたが仕事をコーディングするかどうかの最初のテストは、この仕事text.setText(globalconstant.path);であるかどうかに置き換えます。text.setText("Test message");

Log.d("TestAfterStartAct", "Test Message")次に、コマンドラインを開いて追加adb logcatし、電話からログを表示するために実行できます。コードが実行されている間、新しいアクティビティが表示される前/後/後ではないことに注意してください。

UIスレッドから編集を行わない場合、GUIパーツを更新しないとエラーが発生することがありますtext.postInvalidate()。テキストビューのGUIを更新するように依頼してください。

postInvalidate ()は何をするのですか?

于 2012-09-12T19:16:13.093 に答える