【问题标题】:How can I fix the XML Java button break down?如何修复 XML Java 按钮故障?
【发布时间】:2020-07-31 14:10:43
【问题描述】:

我有一个程序项目。我在同一个类(mainpage.java)中有三个按钮,但是其中一个按钮不起作用!

虽然我将它们(三个按钮)设计成相同的形式!

我的 XML:

    <Button
        android:text="Facebook videos"
        android:theme="@style/btncar"
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:padding="6dp"
        android:background="@drawable/zee"
        android:gravity="center"
        android:onClick="fb"
        android:id="@+id/fbbtn"
        android:drawableRight="@drawable/fbico"
        android:layout_marginTop="50dp"
        android:layout_marginBottom="25dp"/>

    <Button
        android:text="YouTube videos"
        android:theme="@style/btncar"
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:padding="6dp"
        android:background="@drawable/zee"
        android:gravity="center"
        android:onClick="gotoyt"
        android:id="@+id/ytbtn"
        android:drawableRight="@drawable/ytico"
        android:layout_marginTop="5dp"
        android:layout_marginBottom="25dp"/>

    <Button
        android:text="others"
        android:theme="@style/btncar"
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:padding="6dp"
        android:background="@drawable/zee"
        android:gravity="center"
        android:drawableRight="@drawable/allico"
        android:onClick="gotoalllinks"
        android:id="@+id/othbtn"
        android:layout_marginTop="5dp"
        android:layout_marginBottom="25dp"/>

还有我的 Java 类:

public void gotoyt(View v) {
    ent.putExtra("linktype", "YouTube");
    startActivity(ent);
}

public void gotoalllinks(View v) {
    ent.putExtra("linktype", "other");
    startActivity(ent);
}

public void fbgo(View v) {
    ent.putExtra("linktype", "Facebook");
    startActivity(ent);
}

当我点击“Facebook 视频”按钮(第一个)时,我的程序将关闭!

【问题讨论】:

  • 您的活动中没有回调fb(View view) 方法

标签: java android xml android-button


【解决方案1】:

您在布局中输入了错误的回调,因此您需要将 Facebook 按钮的 android:onClick="fb" 更改为 android:onClick="gotoyt"

因此,将布局更改为:

<Button
    android:text="YouTube videos"
    android:theme="@style/btncar"
    android:layout_width="match_parent"
    android:layout_height="80dp"
    android:padding="6dp"
    android:background="@drawable/zee"
    android:gravity="center"
    android:onClick="gotoyt"
    android:id="@+id/ytbtn"
    android:drawableRight="@drawable/ytico"
    android:layout_marginTop="5dp"
    android:layout_marginBottom="25dp"/>

<Button
    android:text="others"
    android:theme="@style/btncar"
    android:layout_width="match_parent"
    android:layout_height="80dp"
    android:padding="6dp"
    android:background="@drawable/zee"
    android:gravity="center"
    android:drawableRight="@drawable/allico"
    android:onClick="gotoalllinks"
    android:id="@+id/othbtn"
    android:layout_marginTop="5dp"
    android:layout_marginBottom="25dp"/>

<Button
    android:text="Facebook videos"
    android:theme="@style/btncar"
    android:layout_width="match_parent"
    android:layout_height="80dp"
    android:padding="6dp"
    android:background="@drawable/zee"
    android:gravity="center"
    android:onClick="fbgo"
    android:id="@+id/fbbtn"
    android:drawableRight="@drawable/fbico"
    android:layout_marginTop="50dp"
    android:layout_marginBottom="25dp"/>

【讨论】:

    【解决方案2】:

    第一个按钮的 XML 内容应该有android:onClick="fb",因为你的函数名是fbgo

    另外,检查 XML 内容是否正确,因为您的第一个按钮似乎没有 &lt; 开始标记。

    【讨论】:

      猜你喜欢
      • 2019-08-29
      • 1970-01-01
      • 1970-01-01
      • 2023-01-02
      • 1970-01-01
      • 1970-01-01
      • 2018-06-12
      • 2017-03-21
      • 1970-01-01
      相关资源
      最近更新 更多