問題解決了! 在我的relativelayout標記中,我定義了android:onClick ... 我刪除了它,它的工作原理,感謝您的幫助!
當我爲我的按鈕,可以使用選擇,我的應用程序崩潰...... 我會瘋了..我研究了互聯網上,但我沒有找到真正的解決方案android當我使用選擇器爲我的按鈕,它崩潰
我的按鈕代碼:
<Button
android:id="@+id/ib_login"
android:layout_width="300dp"
android:layout_height="40dp"
android:layout_alignLeft="@+id/et_password"
android:layout_below="@+id/et_password"
android:layout_marginTop="20dp"
android:background="@drawable/login_selector" />
我選擇代碼:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@drawable/button_onclick"
/>
<item android:drawable="@drawable/button"/>
</selector>
而且我的logcat:
04-18 06:52:37.084: E/AndroidRuntime(608): FATAL EXCEPTION: main
04-18 06:52:37.084: E/AndroidRuntime(608): java.lang.IllegalStateException: Could not find a method res/drawable-hdpi/button_onclick.png(View) in the activity class com.kisirdongu.denemeapp.MainActivity for onClick handler on view class android.widget.RelativeLayout with id 'container'
04-18 06:52:37.084: E/AndroidRuntime(608): at android.view.View$1.onClick(View.java:3031)
04-18 06:52:37.084: E/AndroidRuntime(608): at android.view.View.performClick(View.java:3511)
04-18 06:52:37.084: E/AndroidRuntime(608): at android.view.View$PerformClick.run(View.java:14105)
04-18 06:52:37.084: E/AndroidRuntime(608): at android.os.Handler.handleCallback(Handler.java:605)
04-18 06:52:37.084: E/AndroidRuntime(608): at android.os.Handler.dispatchMessage(Handler.java:92)
04-18 06:52:37.084: E/AndroidRuntime(608): at android.os.Looper.loop(Looper.java:137)
04-18 06:52:37.084: E/AndroidRuntime(608): at android.app.ActivityThread.main(ActivityThread.java:4424)
04-18 06:52:37.084: E/AndroidRuntime(608): at java.lang.reflect.Method.invokeNative(Native Method)
04-18 06:52:37.084: E/AndroidRuntime(608): at java.lang.reflect.Method.invoke(Method.java:511)
04-18 06:52:37.084: E/AndroidRuntime(608): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
04-18 06:52:37.084: E/AndroidRuntime(608): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
04-18 06:52:37.084: E/AndroidRuntime(608): at dalvik.system.NativeStart.main(Native Method)
04-18 06:52:37.084: E/AndroidRuntime(608): Caused by: java.lang.NoSuchMethodException: res/drawable-hdpi/button_onclick.png [class android.view.View]
04-18 06:52:37.084: E/AndroidRuntime(608): at java.lang.Class.getConstructorOrMethod(Class.java:460)
04-18 06:52:37.084: E/AndroidRuntime(608): at java.lang.Class.getMethod(Class.java:915)
04-18 06:52:37.084: E/AndroidRuntime(608): at android.view.View$1.onClick(View.java:3024)
04-18 06:52:37.084: E/AndroidRuntime(608): ... 11 more
*整個佈局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#C7C7C7"
android:onClick="@drawable/button_onclick"
android:orientation="vertical"
tools:context="com.kisirdongu.denemeapp.MainActivity"
tools:ignore="MergeRootFrame" >
<EditText
android:id="@+id/et_password"
android:layout_width="300dp"
android:layout_height="40dp"
android:layout_below="@+id/et_username"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:background="@drawable/edittext"
android:drawablePadding="10dp"
android:ems="10"
android:hint="*****"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:password="true"
android:singleLine="true" />
<Button
android:id="@+id/ib_login"
android:layout_width="300dp"
android:layout_height="40dp"
android:layout_alignLeft="@+id/et_password"
android:layout_below="@+id/et_password"
android:layout_marginTop="20dp"
android:background="@drawable/login_selector" />
<ProgressBar
android:id="@+id/pb_login"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/ib_login"
android:layout_centerHorizontal="true"
android:layout_marginTop="17dp"
android:visibility="invisible" />
<TextView
android:id="@+id/tv_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/pb_login"
android:layout_centerHorizontal="true"
android:layout_marginTop="11dp"
android:text="Logging in..."
android:visibility="invisible" />
<EditText
android:id="@+id/et_username"
android:layout_width="300dp"
android:layout_height="40dp"
android:layout_alignLeft="@+id/et_password"
android:layout_alignParentTop="true"
android:layout_marginTop="52dp"
android:background="@drawable/edittext"
android:drawablePadding="10dp"
android:ems="10"
android:hint="username"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:singleLine="true" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/tv_user"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="14dp"
android:text="User Login"
android:textColor="#333"
android:textSize="20sp" />
</RelativeLayout>
*我繪製forlder:
感謝您的幫助!
你確定那是因爲這個按鈕造成的?你可以發佈你的整個佈局? – tasomaniac
您確定您的可繪製文件夾中有名爲'button_onclick.png'的圖片,拼寫正確嗎? –