我按下按钮:
<Button
android:id="@+id/dialog_menu_topic"
style="@style/dialog_menu_topic"/>
带有样式参考:
<style name="dialog_menu_topic">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_alignParentRight">true</item>
<item name="android:layout_alignParentTop">true</item>
<item name="android:text">@string/menu_button</item>
<item name="android:onClick">menuButtonClicked</item>
<item name="android:visibility">visible</item>
此活动声明为对话框:
<style name="dialog_style" parent="@android:style/Theme.Dialog">
<item name="android:windowNoTitle">true</item>
如果我只是这样做:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.myActivity);
Button menuButton = (Button) findViewById(R.id.dialog_menu_topic);
menuButton.setVisibility(Button.GONE);
}
什么都没发生。我尝试获取layoutparams,添加一个规则,我设置可见性消失并将params设置为按钮。但按钮一次又一次出现。任何帮助表示赞赏。
应用程序没有崩溃,按钮没有隐藏,因为他应该这样做。注意:Button的样式和ID具有相同的名称,但它们位于不同的位置,因此它们可以具有相同的名称,而不是问题!任何帮助表示赞赏。
更新 Button.setVisibility(int value)需要一个整数。 Button和View.GONE都返回相同的整数..这不是问题,是的,我尝试使用View.GONE,即使它没有必要......:
11-27 14:56:24.538: E/Button id Button.Gone(27826): 8
11-27 14:56:24.538: E/View id View.Gone(27826): 8
View.GONE和Button.GONE的Logcat输出......
更新当我使用此Button的onClick方法setVisibility时,它可以工作!:
public void myOnclickFromMenuButton(View v){
v.setVisibility(View.GONE);
}
但是,如果我在我的正常onCreate-Method中使用它,如:
View myButtonView = (View) findViewById(R.id.dialog_menu_topic);
myButtonView.setVisibility(View.GONE);
再一次没有发生......这真是一个糟糕的笑话......; //
更新我的menuButton,其中setVisibility已消失,而来自onClick方法的View v具有完全相同的ID:
11-27 18:48:56.867: E/menuButton.getId(12417): 2131361795
11-27 18:49:00.850: E/v getId(12417): 2131361795
从v消失了,但在正常的onCreate中它不会! 请帮忙..
答案 0 :(得分:0)
尝试
menuButton.setVisibility(View.GONE);
答案 1 :(得分:0)
我认为你应该尝试menuButton.setVisibility(View.GONE);