Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android setContentView使我的ImageView按钮不可点击?_Android_Imageview_Android Imageview - Fatal编程技术网

Android setContentView使我的ImageView按钮不可点击?

Android setContentView使我的ImageView按钮不可点击?,android,imageview,android-imageview,Android,Imageview,Android Imageview,在我更改应用程序中显示的布局后,弄清楚为什么ImageView按钮停止工作时遇到一些问题。请告诉我,如果你看到这个代码有什么问题。。。调用更改setContentView后,即使将布局设置为最初在OnCreate中设置的布局,也无法单击按钮。基本上,我希望能够通过调用此函数随时将视图重置为已知状态 谢谢你的建议!下面是中断按钮的代码,实际上只有调用setContentView的行中断按钮,但下面是函数的其余部分: public void defaultrailview(){

在我更改应用程序中显示的布局后,弄清楚为什么ImageView按钮停止工作时遇到一些问题。请告诉我,如果你看到这个代码有什么问题。。。调用更改setContentView后,即使将布局设置为最初在OnCreate中设置的布局,也无法单击按钮。基本上,我希望能够通过调用此函数随时将视图重置为已知状态

谢谢你的建议!下面是中断按钮的代码,实际上只有调用setContentView的行中断按钮,但下面是函数的其余部分:

    public void defaultrailview(){
      setContentView(R.layout.railtrick);
      ImageView jumpsbutton = (ImageView) findViewById(R.id.jumpsbutton);
      ImageView settingsbutton = (ImageView) findViewById(R.id.settingsbutton);
      jumpsbutton.setClickable(true);
      settingsbutton.setClickable(true);    
      ImageView ghost1 = (ImageView)findViewById(R.id.rt1);
      ghost1.setAlpha(51);
      ImageView ghost2 = (ImageView)findViewById(R.id.rt2);
      ghost2.setAlpha(51);
      ImageView ghost3 = (ImageView)findViewById(R.id.rt3);
      ghost3.setAlpha(51);
      ImageView ghost4 = (ImageView)findViewById(R.id.rt4);
      ghost4.setAlpha(51);
      ImageView railtext = (ImageView)findViewById(R.id.railstext);
      railtext.setAlpha(127);
      ImageView shaketoroll = (ImageView)findViewById(R.id.ShakeToRoll);
      shaketoroll.setVisibility(4);
}

以及railtrick的XML:



再次感谢。我爱你们所有人

您可以尝试在xml中使用android:onclick=“imageButton”,并在类中创建一个函数,如

public void imageButton(View view){
   // your code
}

您可以尝试在xml中使用android:onclick=“imageButton”,并在类中创建一个函数,如

public void imageButton(View view){
   // your code
}

当将相同的值传递给setContentView时,您仍在请求扩展该资源,这意味着所有新对象


您需要重新分配onClickListeners,因为您的旧按钮不再显示在屏幕上。

将相同的值传递到setContentView时,您仍在请求扩展该资源,即所有新对象


您需要重新分配onClickListeners,因为您的旧按钮已不在屏幕上。

您认为这与ImageView相比是否可行?在我调用setContentView之前,这些按钮工作正常。在这种情况下,您是否尝试使视图无效?或者为两个XML中的图像视图提供不同的名称?(我假设您为同一个活动设置了两个不同的视图)是的,为同一个活动设置了两个视图(我知道这样做不太好,但这是“暂时的”一个更大问题的解决方案,我必须多考虑一下。目前,我并没有实际更改视图,我只是重新设置最初设置的视图,因此名称不能不同。此外,我尝试使用您的建议,但没有效果…我知道不建议在活动中更改视图。您可以取消吗给整个布局定日期,还是我必须为每个按钮都定日期?算了吧!invalidate()有效。名为jumpsbutton.invalidate()和settingsbutton.invalidate()感谢您的帮助。@push.pop:将此答案标记为已接受,以便其他用户可以参考。您认为这对ImageView有效的具体原因是什么?在我调用setContentView之前,按钮工作正常。在这种情况下,您是否尝试使视图无效?或者在两个XML中为图像视图提供不同的名称?(我假设您为同一个活动设置了两个不同的视图)是的,为同一个活动设置了两个视图(我知道这样做不太好,但这是“暂时的”一个更大问题的解决方案,我必须多考虑一下。目前,我并没有实际更改视图,我只是重新设置最初设置的视图,因此名称不能不同。此外,我尝试使用您的建议,但没有效果…我知道不建议在活动中更改视图。您可以取消吗给整个布局定日期,还是我必须为每个按钮都定日期?算了吧!invalidate()有效。名为jumpsbutton.invalidate()和settingsbutton.invalidate()谢谢你的帮助。@push.pop:将这个答案标记为已接受,以便其他用户可以引用。老兄,谢谢你删除了你的其他问题,我正在回答,当我最终决定提交我的答案时,它说你在3分钟前删除了它……你应该留下所有问题,他们不仅帮助你哦,该死的,我很好rry.我是这个网站的新手,非常沮丧。我不知道为什么我删除了它…嗯,我真的不知道该说什么,我真的很抱歉…只有在你想删除的时候你才可以点击取消删除。谢谢你删除了你的另一个问题,我正在回答它,当我最终决定提交我的答案时,它说你在3分钟前删除了它。。。。。你应该留下所有的问题,他们不仅帮助你哦,狗屎,我很抱歉。我是这个网站的新手,只是非常沮丧。我不知道为什么我删除了它…嗯,我真的不知道该说什么,我真的很抱歉…你可以去那里,并单击取消删除,如果你想