[英]Setting a TextView to visible from invisible based on an if statement
我在屏幕上有幾個字符串,在應用程序啟動時設置為不可見。 當在另一個屏幕上單擊按鈕時,我希望特定的字符串變得可見。 最終,我希望通過單擊此按鈕可以使其中的一些字符串變得可見。
public void buttona0Click(View view){
setContentView(R.layout.report_screen);
buttonClicked2 = 1;
if(buttonClicked1==1){
setVisibility(R.id.textView2.VISIBLE);
}
}
我主要是在這方面尋找指導
setVisibility(R.id.textView2.VISIBLE);
我一般對編程都不熟悉,所以我不知道我所說的內容對大多數人是否有意義。 .setText
是否可以替代?
編寫自己的算法:
您需要首先實例化TextView
。 因此,最簡單的開始方法是在onCreate()
之前和其他任何方法之外聲明它們,以便它們成為成員變量
public class MyActivity extends Activity
{
TextView tv1, tv2, etc...;
public void onCreate(...)
{
super.onCreate(...);
setContentView(R.layout.my_layout);
tv1 = (TextView) findViewById(R.id.textView1);
...
}
然后在您的onClick()
更改采用int
值的Visibility
public void buttona0Click(View view){
buttonClicked2 = 1;
if(buttonClicked1==1){
tv1.setVisibility(View.VISIBLE);
}
}
注意:請不要在代碼中包含上面的“ ...”。 那只是被忽略的代碼,我假設您已經知道如何處理。 另外,我從onClick()
方法中取出了setContentView()
,因為通常這只能在onCreate()
完成一次。
我不確定其中的邏輯,因為我不知道buttonClicked1
變量是做什么用的,但這是如何實現Visibility
。
.setText是否可以替代?
這將簡單地設置文本,因此,如果您已經在xml中設置了文本,則不需要...只需在嘗試進行操作時更改Visibility
即可。 如果您尚未設置,則需要使用類似
tv1.setText("Hello World"); // input your own String or String resource
確保在setContentView()
之后在onCreate()
為所有TextView調用setVisibility(View.GONE)
setContentView()
。 然后在您的if子句中將所選textview的可見性設置為View.VISIBLE- textview.setVisibility(View.VISIBLE)
首先是TextView
findViewById
,然后在按鈕的onClick
函數中,將該textView的可見性設置為VISIBLE
TextView textView = (TextView) findViewById(R.id.textView1);
public void buttona0Click(View view){
buttonClicked2 = 1;
if(buttonClicked1==1){
textView.setVisibility(view.VISIBLE);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.