如何以编程方式隐藏button?
我有一个RelativeLayout
包含两个button。 它们彼此重叠。
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#FFFFFF"> <Button android:text="Play" android:id="@+id/play" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom = "true"> </Button> <Button android:text="Stop " android:id="@+id/stop" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom = "true"> </Button> </RelativeLayout>
我想以编程方式显示一次只有一个button,当它的点击事件被调用。
我尝试过:
playButton.setVisibility(1);
但它不起作用。 以下是我正在尝试做的一个例子。
playButton = (Button) findViewById(R.id.play); playButton.setVisibility(1); playButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //when play is clicked show stop button and hide play button } });
您可以使用下面的代码:
playButton = (Button) findViewById(R.id.play); playButton.setVisibility(View.VISIBLE); playButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //when play is clicked show stop button and hide play button playButton.setVisibility(View.GONE); stopButton.setVisibility(View.VISIBLE); } });
尝试下面的代码 –
playButton.setVisibility(View.INVISIBLE);
要么 –
playButton.setVisibility(View.GONE);
再次用 –
playButton.setVisibility(View.VISIBLE);
请在下面使用
View.GONE and View.VISIBLE
Hidde:
BUTTON.setVisibility(View.GONE);
显示:
BUTTON.setVisibility(View.VISIBLE);
我build议你只用一个button来改变button上的文本和行为。 这比处理两个重叠的button更容易和更清洁。
@Override public void onClick(View v) { String curText = ((TextView)v).getText(); if(curText.equals("Play")){ ((TextView)v).setText("Stop"); } if(curText.equals("Stop")){ ((TextView)v).setText("Play"); } }
public void OnClick(View.v) Button b1 = (Button) findViewById(R.id.playButton); b1.setVisiblity(View.INVISIBLE);
尝试View.INVISIBLE
。
请试试这个: playButton = (Button) findViewById(R.id.play); playButton.setVisibility(View.INVISIBLE);
playButton = (Button) findViewById(R.id.play); playButton.setVisibility(View.INVISIBLE);
我认为这将做到这一点。
Button button = (Button) findViewById(R.id.myButton); //set to visible button.setVisibility(View.VISIBLE); //set to invisble button.setVisibility(View.INVISIBLE); //or button.setVisibility(View.GONE);