0

我在屏幕上有几个文本字符串,在应用程序启动时设置为不可见。当在另一个屏幕上单击一个按钮时,我希望一个特定的字符串可见。最终,我希望通过单击此按钮使几个字符串变得可见。

    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替代品吗?

4

4 回答 4

1

编写自己的算法:

  1. 使用一个布尔值
  2. 查看 VISIBLE 和 GONE 基于自己的上述布尔变量
于 2013-10-30T17:50:25.167 回答
0

你需要实例化你的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()改变Visibilityint取值

 public void buttona0Click(View view){
     buttonClicked2 = 1;
     if(buttonClicked1==1){
         tv1.setVisibility(View.VISIBLE);
    }
}

注意:请不要在代码中包含上面的“...”。这只是省略的代码,我假设您已经知道如何处理。setContentView()另外,我从方法中取出,onClick()因为通常这应该只在onCreate().

我不确定里面的逻辑,因为我不知道buttonClicked1变量的用途,但那是如何做Visibility.

setVisibility() 文档

.setText 是替代品吗?

这将简单地设置文本,所以如果你已经在你的 xml 中设置了它,那么你不需要......你可以改变Visibility你正在尝试做的事情。如果您还没有设置它,那么您将需要使用类似的东西

tv1.setText("Hello World");  // input your own String or String resource
于 2013-10-30T17:47:37.223 回答
0

确保在after中调用setVisibility(View.GONE)所有 TextView 。然后在您的 if 子句中将所选文本视图的可见性设置为 View.VISIBLE -onCreate()setContentView()textview.setVisibility(View.VISIBLE)

于 2013-10-30T17:50:37.113 回答
0

首先findViewByIdTextViewonClick您的按钮的功能中,将该 textView 的可见性设置为VISIBLE

TextView textView = (TextView) findViewById(R.id.textView1);


 public void buttona0Click(View view){
     buttonClicked2 = 1;
    if(buttonClicked1==1){
        textView.setVisibility(view.VISIBLE);
        }
}
于 2013-10-30T17:51:28.150 回答