2011-07-02 114 views
12

Im在將textview設置爲不可見/可見時遇到了一些麻煩。Android開發切換TextView的可見性

基本上我希望這發生在點擊開/關按鈕時。

我所做的是一種像

textview.setVisibility(TextView.VISIBLE); 
textview.setVisibility(TextView.INVISIBLE); 

當我嘗試執行此emultor說,該應用unexcpetedly停止

+1

你可以添加一個堆棧跟蹤嗎? – thaussma

+0

您是否使用TextView將您的內容設置爲佈局文件? ('setContentView(R.layout.main);')和2.通過id查找你的視圖? ('findViewById(R.id.mytextview);') – nhaarman

回答

28

你是從XML還是以編程方式構建這個?

我會讓它與一個XML文件,然後當活動運行更改屬性。在嘗試使用findViewById(...)獲取TextView之前,請務必使用setContentView(R.layout.main);

在TextView上調用.setVisibility(View.GONE);來隱藏它。

在TextView上調用.setVisibility(View.VISIBLE);來顯示它。

我有一個例子,做這樣的事情。你可以在這裏看到代碼:https://github.com/ethankhall/Morse-Messenger/blob/master/src/com/kopysoft/MorseMessenger/Translate.java

2

沒有更多的代碼或堆棧跟蹤,很難說,但它聽起來像你還沒有初始化文本視圖。以下是如何做到這一點:

TextView myTextView = (TextView) findViewById(R.id.tv_text); 

其中「tv_text」是在XML佈局文件中定義的TextView中的ID。

希望有幫助!