2014-11-25 58 views
0

我想:如何獲得textview的值?

TextView textView1 = (TextView) getActivity().findViewById(R.id.date); 
    String s1 = textView1.getText().toString(); 

,但在第二行落在錯誤:

java.lang.NullPointerException 
at com.ancort.cryptophone.guitest.CAMyTest.testMail_000(CAMyTest.java:94) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214) 
at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199) 
at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192) 
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:192) 
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:177) 
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555) 
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1619) 

而且,我試圖

TextView textView1 = (TextView)findViewByID(R.id.date); 
    String s = textView1.getText().toString(); 

但在這種情況下, 「findViewByID」 錯誤紅色亮點」無法解析findViewById(int)方法「。我知道類必須從Activity類繼承,但是我的類從另一個類繼承而來。如何獲得textview的價值?

+0

你把這段代碼放在setContentView之前嗎? – 2014-11-25 11:37:07

+0

顯示您的xml代碼佈局 – Suvitruf 2014-11-25 11:37:10

+1

請發佈您的完整代碼。 – 2014-11-25 11:37:11

回答

0

如果您正在使用getActivity,則您在片段內部,並且該視圖可能只是片段本身的一部分。

變化

TextView textView1 = (TextView) getActivity().findViewById(R.id.date); 

TextView textView1 = (TextView) getView().findViewById(R.id.date); 

,如果你使用的是行後onCreateView

0

我認爲你正在使用的片段。在onCreateView寫

View view = inflater.inflate(R.layout.your_fragment_layout,container, false);                   
TextView textView1 = (TextView) view.findViewById(R.id.date); 

希望這會工作。 :)

0

我想得到一個在TextView中的值。這個決定很簡單:

TextView textView1 = (TextView) solo.getView(R.id.date); String s1 = 
textView1.getText().toString(); 

謝謝大家。