Tôi đang cố gắng thêm hình ảnh vào ứng dụng của mình nhưng nó vẫn bị lỗi và tôi không thể kết luận tại sao.Lỗi ứng dụng khi thêm một ImageView
Tôi có nhiều hình ảnh trong ứng dụng của mình, nhưng việc thêm hình ảnh này dường như có vấn đề. Dưới đây là xml của tôi (EDIT: xml đầy đủ (Điều này đã thay đổi kể từ bản gốc cho các mục đích bố trí)):
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/imageTextButton4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/imageTextButton3"
android:layout_alignBottom="@+id/imageTextButton3"
android:layout_alignLeft="@+id/imageTextButton2"
android:layout_alignRight="@+id/imageTextButton2"
android:drawableTop="@drawable/ic_launcher"
android:text="Progress" />
<Button
android:id="@+id/imageTextButton3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/imageTextButton1"
android:layout_alignRight="@+id/imageTextButton1"
android:layout_below="@+id/imageTextButton1"
android:layout_marginTop="85dp"
android:drawableTop="@drawable/ic_launcher"
android:text="Meal Plans" />
<Button
android:id="@+id/imageTextButton2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="22dp"
android:drawableTop="@drawable/ic_launcher"
android:text="Your Meals" />
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="42dp"
android:src="@drawable/logo" />
<Button
android:id="@+id/imageTextButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="16dp"
android:drawableTop="@drawable/ic_launcher"
android:text="Meal of the Day" />
</RelativeLayout>
Và mã java của tôi (ngưng tụ cho ngắn gọn):
package com.example.c3347115app;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.content.Intent;
public class MainActivity extends Activity {
ImageView image;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
image = (ImageView) findViewById(R.id.imageView1);
Logcat:
05-10 01:55:30.718: W/dalvikvm(13140): threadid=1: thread exiting with uncaught exception (group=0x40a99228)
05-10 01:55:30.728: E/AndroidRuntime(13140): FATAL EXCEPTION: main
05-10 01:55:30.728: E/AndroidRuntime(13140): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.c3347115app/com.example.c3347115app.MainActivity}: java.lang.ClassCastException: android.widget.Button cannot be cast to android.widget.ImageView
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2205)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2240)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.app.ActivityThread.access$600(ActivityThread.java:139)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1262)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.os.Handler.dispatchMessage(Handler.java:99)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.os.Looper.loop(Looper.java:156)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.app.ActivityThread.main(ActivityThread.java:4987)
05-10 01:55:30.728: E/AndroidRuntime(13140): at java.lang.reflect.Method.invokeNative(Native Method)
05-10 01:55:30.728: E/AndroidRuntime(13140): at java.lang.reflect.Method.invoke(Method.java:511)
05-10 01:55:30.728: E/AndroidRuntime(13140): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
05-10 01:55:30.728: E/AndroidRuntime(13140): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
05-10 01:55:30.728: E/AndroidRuntime(13140): at dalvik.system.NativeStart.main(Native Method)
05-10 01:55:30.728: E/AndroidRuntime(13140): Caused by: java.lang.ClassCastException: android.widget.Button cannot be cast to android.widget.ImageView
05-10 01:55:30.728: E/AndroidRuntime(13140): at com.example.c3347115app.MainActivity.onCreate(MainActivity.java:22)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.app.Activity.performCreate(Activity.java:4538)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1071)
05-10 01:55:30.728: E/AndroidRuntime(13140): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2161)
Có ai có thể tìm ra vấn đề là gì không? Cảm ơn trước.
Bạn có thể cung cấp đầu ra logcat không? –
Dấu vết ngăn xếp cho sự cố là gì? – kabuko
cung cấp đầy đủ xml – Gustek