Java ImageButtons上的setVisibility问题

Java ImageButtons上的setVisibility问题,java,android,eclipse,android-layout,Java,Android,Eclipse,Android Layout,嘿,所以我一直在寻找这个话题,但找不到很多,所以我想我可以问这个问题。我想要实现的是在XML布局中有两个重叠的图像按钮。然后在.java文件中,当单击顶部按钮时,它将消失,并显示第二个图像按钮。单击该按钮时,它将消失,第一个图像按钮将重新出现,并不断打开 我遇到的问题是,当我点击第一个按钮时,它消失得很好,总共工作了两次,然后所有东西都消失了。我不确定我是否做得对,也许有比我如何做更好的方法来实现这一点,所以我很乐意接受建议 另外,我在First按钮中没有另一行将musicbutton2设置为可

嘿,所以我一直在寻找这个话题,但找不到很多,所以我想我可以问这个问题。我想要实现的是在XML布局中有两个重叠的图像按钮。然后在.java文件中,当单击顶部按钮时,它将消失,并显示第二个图像按钮。单击该按钮时,它将消失,第一个图像按钮将重新出现,并不断打开

我遇到的问题是,当我点击第一个按钮时,它消失得很好,总共工作了两次,然后所有东西都消失了。我不确定我是否做得对,也许有比我如何做更好的方法来实现这一点,所以我很乐意接受建议

另外,我在First按钮中没有另一行将musicbutton2设置为可见的原因是,当我这样做时,标签高亮显示为蓝色,并导致强制关闭

optionsActivity.java(新):

options.xml:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/mainscreen" >

     <ImageButton
        android:id="@+id/musicbutton"
        android:layout_width="218dp"
        android:layout_height="51dp"
        android:layout_marginBottom="100dp"
        android:layout_marginLeft="50dp"
        android:layout_marginTop="200dp"
        android:background="@drawable/musicbutton"
        android:scaleType="centerCrop"
          />



</LinearLayout>

我认为你的问题来了,因为你试图使用线性布局和页边空白顶部将其中一个按钮向上移动

看看,如果你改用其中一个作为你的父母,那么你可以摆脱保证金的东西。按钮将默认为重叠,就像您的目标一样。如果您这样做了,但仍然遇到相同的问题,则向单击侦听器添加一些日志调试语句,当按钮更改可见性时,这些侦听器将输出日志调试语句,以尝试查看发生了什么


如果你的目标仅仅是改变按钮的外观,我建议你只使用一个按钮,只需改变它的背景。您可以保留一个布尔标志并使用它检查是否应设置为R.drawable.musicbutton或R.drawable.musicbutton2

如果我只使用一个按钮并仅更改外观,我是否仍可以让它执行两个不同的操作,例如暂停和恢复音乐?是,您只需保留一个布尔标志,可以使用if语句进行检查。每次按下它,你都会翻转布尔值。在你的if陈述中,你可以为每一种可能性做任何你想做的事。你能帮我吗。我对每件事都很陌生,不知道从这里该去哪里。我在上面更新了我的活动课。谢谢
    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/mainscreen" >

     <ImageButton
        android:id="@+id/musicbutton"
        android:layout_width="218dp"
        android:layout_height="51dp"
        android:layout_marginBottom="100dp"
        android:layout_marginLeft="50dp"
        android:layout_marginTop="200dp"
        android:background="@drawable/musicbutton"
        android:scaleType="centerCrop"
          />



</LinearLayout>