java - 无法单击图像按钮

标签 java android imagebutton

我在 main_view.xml 中有一个以下布局,其中包含一个 ImageButton ,当我单击/触摸按钮时按钮 ButtonListener函数永远不会被调用。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relativeLayoutFragment"
android:layout_width="match_parent"
android:layout_height="fill_parent" >

<fragment
    android:id="@+id/mapArea"
    android:name="com.google.android.gms.maps.MapFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
</fragment>

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/locate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="10dp"
        android:background="#80000000"
        android:gravity="center"
        android:padding="10dp"
        android:text="@string/findingLocation"
        android:textColor="#FFFFFF"
        android:textSize="12sp" />

    <ImageButton
        android:id="@+id/Button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_marginBottom="@dimen/rightLeftMargin"
        android:layout_marginLeft="@dimen/rightLeftMargin"
        android:background="@null"
        android:clickable="true"
        android:contentDescription="@string/button1text"
        android:src="@drawable/ic_feed_active" />

    <ImageButton
        android:id="@+id/Button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="@dimen/rightLeftMargin"
        android:background="@null"
        android:contentDescription="@string/button2"
        android:src="@drawable/ic_button2" />

    <ImageButton
        android:id="@+id/Button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginBottom="@dimen/rightLeftMargin"
        android:layout_marginRight="@dimen/rightLeftMargin"
        android:background="@null"
        android:contentDescription="@string/button3View"
        android:src="@drawable/ic_settings_active" />
</RelativeLayout>

MainActivity.Java 中的以下代码 公共(public)类 MainActivity 扩展 Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    User usrObj = new User();
    if (usrObj.authenticateUser())
        setContentView(R.layout.main_view);
    else
        setContentView(R.layout.login);
}

public void ButtonListener() {

    ImageButton oggleButton = (ImageButton) findViewById(R.id.Button1);

    ToggleButton.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

            Toast.makeText(MainActivity.this, "ImageButton is clicked!",
                    Toast.LENGTH_SHORT).show();

        }

    });

}
}

请帮忙。

最佳答案

usrObj.authenticateUser() 为 true 时,您忘记调用 ButtonListener 方法。这样做:

if (usrObj.authenticateUser())
   {
        setContentView(R.layout.main_view);
        ButtonListener ();  << call here
   }
    else
        setContentView(R.layout.login);

并将 setOnClickListener 附加到 oggleButton 而不是 ToggleButton

关于java - 无法单击图像按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19412345/

相关文章:

android - 如何从 asyncTask onPostExecute() android 填充 listView

android - RxJava onBackpressureBuffer 不发射项目

android - 如何使用图像按钮从 layout2 导航到 layout3

java - 如何在操作栏中制作自定义进度条?

java - 成员变量在声明时未能初始化

android通知仅播放声音通知未显示在通知抽屉中

java - 如何将此 int 初始化为常量?

android - 如何使用多个 TouchDelegate

Java EE 7 教程,netbeans 找不到 glassfish

Java - PriorityQueue 的替代方案,保留重复的插入顺序