Java Android音乐播放器fc和打开跟踪文件时出错

Java Android音乐播放器fc和打开跟踪文件时出错,java,android,media-player,audio-player,android-music-player,Java,Android,Media Player,Audio Player,Android Music Player,我最近一直在开发一个音乐应用程序,我一直在使用一些源代码,并根据自己的规范对其进行定制。我完成了编辑和调试,它在发布时暂停 调试: Thread [<1> main] (Suspended (exception RuntimeException)) ActivityThread.performLaunchActivity(ActivityThread$ActivityClientRecord, Intent) line: 2306 ActivityThread.handl

我最近一直在开发一个音乐应用程序,我一直在使用一些源代码,并根据自己的规范对其进行定制。我完成了编辑和调试,它在发布时暂停

调试:

Thread [<1> main] (Suspended (exception RuntimeException))  
ActivityThread.performLaunchActivity(ActivityThread$ActivityClientRecord, Intent) line: 2306    
ActivityThread.handleLaunchActivity(ActivityThread$ActivityClientRecord, Intent) line: 2356 
ActivityThread.access$600(ActivityThread, ActivityThread$ActivityClientRecord, Intent) line: 150    
ActivityThread$H.handleMessage(Message) line: 1244  
ActivityThread$H(Handler).dispatchMessage(Message) line: 99 
Looper.loop() line: 137 
ActivityThread.main(String[]) line: 5195    
Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]  
Method.invoke(Object, Object...) line: 511  
ZygoteInit$MethodAndArgsCaller.run() line: 795  
ZygoteInit.main(String[]) line: 562 
NativeStart.main(String[]) line: not available [native method]  


您正在将一个对象强制转换为错误的类型

03-22 23:53:21.335: E/AndroidRuntime(25591):
 java.lang.RuntimeException: Unable to start activity 
ComponentInfo{com.timmo.tampmusicplayer/com.timmo.tampmusicplayer.NowPlaying}:
 java.lang.ClassCastException: android.widget.Button cannot be cast to 
android.widget.ImageButton

我将详细说明:您的布局中有一个按钮,您试图将其作为ImageButton访问

您是从Eclipse运行它吗?在我看来,它实际上是因为运行时异常而停止执行的(可能是空指针异常或从运行时异常派生的任何东西)你需要让它继续执行,这样它会向你显示一个实际包含错误的logcat…知道我该怎么做吗?在你的调试视图中,按下红色的断开按钮。你应该花时间将代码压缩到最相关的部分。我按下了终止键,它在logcat中显示了错误。有人可以看看我更新的链接吗?你可以:a.)将此问题标记为已解决,然后发布一个新的问题(我建议澄清),或者b.)扩展此问题(这可能会混淆问题)好的。这里有一些名声
package com.timmo.tampmusicplayer;

import java.util.ArrayList;
import java.util.HashMap;

import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;

public class Library extends ListActivity {
// Songs list
public ArrayList<HashMap<String, String>> songsList = new ArrayList<HashMap<String, String>>();

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.playlist);

    ArrayList<HashMap<String, String>> songsListData = new ArrayList<HashMap<String, String>>();

    SongsManager plm = new SongsManager();
    // get all songs from sdcard
    this.songsList = plm.getPlayList();

    // looping through playlist
    for (int i = 0; i < songsList.size(); i++) {
        // creating new HashMap
        HashMap<String, String> song = songsList.get(i);

        // adding HashList to ArrayList
        songsListData.add(song);
    }

    // Adding menuItems to ListView
    ListAdapter adapter = new SimpleAdapter(this, songsListData,
            R.layout.playlist_item, new String[] { "songTitle" }, new int[] {
                    R.id.songTitle });

    setListAdapter(adapter);

    // selecting single ListView item
    ListView lv = getListView();
    // listening to single listitem click
    lv.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {
            // getting listitem index
            int songIndex = position;

            // Starting new intent
            Intent in = new Intent(getApplicationContext(),
                    NowPlaying.class);
            // Sending songIndex to PlayerActivity
            in.putExtra("songIndex", songIndex);
            setResult(100, in);
            // Closing PlayListView
            finish();
        }
    });

}
}
3-22 23:53:21.335: E/AndroidRuntime(25591): FATAL EXCEPTION: main
03-22 23:53:21.335: E/AndroidRuntime(25591): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.timmo.tampmusicplayer/com.timmo.tampmusicplayer.NowPlaying}: java.lang.ClassCastException: android.widget.Button cannot be cast to android.widget.ImageButton
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2306)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2356)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.app.ActivityThread.access$600(ActivityThread.java:150)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1244)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.os.Handler.dispatchMessage(Handler.java:99)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.os.Looper.loop(Looper.java:137)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.app.ActivityThread.main(ActivityThread.java:5195)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at java.lang.reflect.Method.invokeNative(Native Method)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at java.lang.reflect.Method.invoke(Method.java:511)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at dalvik.system.NativeStart.main(Native Method)
03-22 23:53:21.335: E/AndroidRuntime(25591): Caused by: java.lang.ClassCastException: android.widget.Button cannot be cast to android.widget.ImageButton
03-22 23:53:21.335: E/AndroidRuntime(25591):    at com.timmo.tampmusicplayer.NowPlaying.onCreate(NowPlaying.java:54)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.app.Activity.performCreate(Activity.java:5104)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
03-22 23:53:21.335: E/AndroidRuntime(25591):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2260)
03-22 23:53:21.335: E/AndroidRuntime(25591):    ... 11 more
03-22 23:53:21.335: E/AndroidRuntime(25591):
 java.lang.RuntimeException: Unable to start activity 
ComponentInfo{com.timmo.tampmusicplayer/com.timmo.tampmusicplayer.NowPlaying}:
 java.lang.ClassCastException: android.widget.Button cannot be cast to 
android.widget.ImageButton