2

レイアウトを膨らませたメインのアクティビティがあります。プロジェクトに共通のメソッドを記述した「Util.java」という名前の別のクラス (このクラスは何も拡張せず、単なるライブラリ クラスです) から更新したいアクティビティにテキスト ビュー (textView) があります。再利用性)。

ブロードキャストを受信したら、「Util.setLoadingText(R.string.loadingText_creating_device);」を使用して Util.java のメソッドを呼び出して、「textView」のテキストを更新します。

 public static void setLoadingText(int resId) {
    if (!Util.isNull(loadingText)) {
        Log.d(Util.TAG, LOG_LABEL + "SET TEXT CALLED:SHOW LOADING SCREEN" );
        loadingText.setText(resId);

    }
}

上記のメソッドを呼び出す前に、メイン アクティビティの onCreate で「Util.init(this)」を呼び出しています。

 public static void init(Activity activity) {
    activity.setContentView(R.layout.loading_screen);
    Log.d(Util.TAG, LOG_LABEL + "INIT CALLED:SHOW LOADING SCREEN" );
    loadingText = (TextView) activity.findViewById(R.id.loadingScreenTextView);
}

コンパイルエラーはありませんが、

  loadingText.setText(resId);

テキストを更新しません。誰かが私が間違っているところを指摘できますか?

4

3 に答える 3

0

ノンアクティビティクラスから

//call class name
  VerifyMobile Sms = new VerifyMobile();
                    Sms.recivedSms(s);

アクティビティ クラス VerifyMobile.java から

static EditText verify_numbertext;

verify_numbertext = (EditText)findViewById(R.id.verify_numbertext);

editText に設定されたテキストの機能

public static void recivedSms(String message) 
     {
         verify_numbertext.setText(message);

     }
于 2015-08-11T19:11:19.307 に答える