使用Android中的一个按钮,TextView可见不可见

时间:2015-02-09 11:35:58

标签: java android android-activity

当我按下按钮以显示TextView它的工作正常时,我创建了一个按钮和TextView,但我的问题是当按下相同的按钮时TextView我怎么能这样做?这是我的代码:

  <Button
        android:id="@+id/btn1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button"
        />
    <TextView
        android:id="@+id/pas_rules"
        android:layout_width="fill_parent"
        android:layout_height="30dp"
        android:text="welcome"
        android:visibility="gone"/>

主要活动:

 button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View arg0) {

            textview.setVisibility(View.VISIBLE);

        }
    });

4 个答案:

答案 0 :(得分:6)

 button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View arg0) {

        textview.setVisibility(textview.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);
        // which is just like:
        /*
        if(textview.getVisibility() == View.VISIBLE)
             textview.setVisibility(View.GONE);
        else
             textview.setVisibility(View.VISIBLE);
        */
    }
});

答案 1 :(得分:2)

您可以通过检查视图的可见性来实现此目的: -

button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View arg0) {

        if(textview.getVisibility()==View.GONE)
        {
        textview.setVisibility(View.VISIBLE);
       }
      else
       {
       textview.setVisibility(View.GONE);
       }

    }
});

答案 2 :(得分:2)

另一种方式

 <Button
    android:id="@+id/btn1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Button"
    android:onClick="Button_Click"
    android:clickable="true"
    />
<TextView
    android:id="@+id/pas_rules"
    android:layout_width="fill_parent"
    android:layout_height="30dp"
    android:text="welcome"
    android:visibility="gone"/>

//现在在Java类中声明Button_Click函数

public void Button_Click(View i)
{

    textview.setVisibility(textview.getVisibility() == View.VISIBLE ? View.GONE : View.VISIBLE);
    // Do your Code in here 
} 

答案 3 :(得分:1)

如果单击按钮,可以检查Textview是否可见。如果它可见,您可以删除可见性,如果没有,您可以使其可见。您可以在此处找到解决方案:How to check TextView Visibility using IF 您必须使用textview.getVisibility()方法并将其检查到View.VISIBLE。如果可见,则必须将textview设置为不可见:textview.setVisibility(View.GONE);

您的代码可能如下所示:

button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View arg0) {
            if (textview.getVisibility()==View.VISIBLE){
                textview.setVisibility(View.GONE);
            }
            else{
                textview.setVisibility(View.VISIBLE);
        }
    });