在按下按钮之前使Android TextView不可见?

时间:2013-10-30 22:09:10

标签: java android android-layout

我希望在按下按钮之前使TextView不可见。具体来说,它们是问题的答案,只有在按下它下面的按钮时才可见。

到目前为止我所拥有的>>

public class AndroidAssignment2_1 extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_android_assignment2_1);

        Button next = (Button) findViewById(R.id.QButton);
        next.setOnClickListener(new View.OnClickListener() {
            public void onClick(View view) {
                Intent intent = new Intent();
                setResult(RESULT_OK, intent);
                finish();

            }
        }); 
            Button next1 = (Button) findViewById(R.id.QButton);
            next1.setOnClickListener(new View.OnClickListener() {
                public void onClick(View view) {
                    Intent myIntent = new Intent(view.getContext(), AndroidAssignment2_2.class);
                    startActivityForResult(myIntent, 0);
                }
            }); 


    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.android_assignment2_1, menu);
        return true;
    }

}

此类的xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

<TextView android:id="@+id/Questions"
    android:layout_weight="1"
    android:layout_width="wrap_content"
    android:layout_height="0dip"
    android:text="@string/Q2"   />

<Button android:id="@+id/QButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_question"  />

<Button android:id="@+id/AButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_send" />

<TextView android:id="@+id/Answers"
    android:layout_weight="1"
    android:layout_width="wrap_content"
    android:layout_height="0dip"
    android:hint="@string/A2" />

<Button android:id="@+id/QuitButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_quit" />


</LinearLayout>

我不认为需要更多,我只是在寻找我将应用于“AButton”的代码,以使TextView“Answers”仅在用户点击后才可见。

3 个答案:

答案 0 :(得分:15)

XML:

<TextView android:id="@+id/Answers"
    android:layout_weight="1"
    android:layout_width="wrap_content"
    android:layout_height="0dip"
    android:hint="@string/A2"
    android:visibility="invisible"/>

代码:

Button button = (Button) findViewById(R.id.AButton);
button.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {
        TextView tv = AndroidAssignment2_1.this.findViewById(R.id.Answers);
        tv.setVisibility(View.VISIBLE);
    }
}); 

答案 1 :(得分:3)

为了使这个工作起作用,首先我们需要创建一个TextView,在其中编写我们的消息,并使用 visibility 属性使TextView不可见,如果Textview像这样:

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world"
        **android:visibility="invisible"**/>

然后在主活动类中创建一个方法,使用 setVisibility()方法在我们的布局中显示invisbile测试视图,如下所示:

  public void onLoveButtonClicked(View view){
        TextView textView = (TextView) findViewById(R.id.haikuTextView);
        textView.setVisibility(View.VISIBLE);

  }

答案 2 :(得分:0)

将Answers TextView可见性设置为不可见或默认情况下消失。

以与查找其他按钮视图相同的方式查找AButton按钮。

在AButton Button上设置一个onClickListener,就像其他按钮的侦听器一样,可以做两件事:

以与查找Button视图相同的方式查找TextView的答案。

在答案TextView上调用setVisibility