我有一個很簡單的用例:價值的EditText的片段中不刷新
- 我已經定義了一個按鈕和其片段的內側一個EditText。
- 我已經將該按鈕操作綁定到片段活動中的方法。
- 我想從方法
我的操作方法(在片段)更新的EditText的文字如下:
public void notifyLaterAction(View view) {
EditText editText = (EditText)findViewById(R.id.nextNotificationTime);
editText.setText("Gotcha");
String theText = editText.getText().toString();
Log.d(LOG_PATH, theText);
}
運行,theText是後「疑難雜症」,但用戶界面不會更新。誰能告訴我這裏發生了什麼?
編輯:額外的代碼
這裏更新是在片段中定義的按鈕:
<Button
android:id="@+id/notifyLaterButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal|top"
android:onClick="notifyLaterAction"
android:text="Ask Me Later" />
下面是完整的堆棧跟蹤:
Caused by: java.lang.NoSuchMethodException: notifyLaterAction [class android.view.View]
at java.lang.Class.getConstructorOrMethod(Class.java:472)
at java.lang.Class.getMethod(Class.java:857)
at android.view.View$1.onClick(View.java:3963)
at android.view.View.performClick(View.java:4654)
at android.view.View$PerformClick.run(View.java:19438)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5487)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NoSuchMethodException: notifyLaterAction [class android.view.View]
at java.lang.Class.getConstructorOrMethod(Class.java:472)
at java.lang.Class.getMethod(Class.java:857)
at android.view.View$1.onClick(View.java:3963)
at android.view.View.performClick(View.java:4654)
at android.view.View$PerformClick.run(View.java:19438)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5487)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1283)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1099)
at dalvik.system.NativeStart.main(Native Method)
嘗試以某種方式使視圖無效 – TheRedFox 2014-11-08 16:19:48
請顯示更多代碼。你在哪裏調用該action()方法? – joao2fast4u 2014-11-08 17:24:28
@ joao2fast4u我正在使用XML綁定技術。 – mhlandry 2014-11-08 17:43:49