2012-06-20 60 views
0

的代码 -我的应用程序显示在我的Android智能手机

package myusic.app.activity; 
import java.util.ArrayList; 
import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 

public class MyusicActivity extends Activity { 
    ArrayList<String> listItems=new ArrayList<String>(); 

    ArrayAdapter<String> adapter; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     adapter=new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_1, 
       listItems); 
     ListView myList=(ListView)findViewById(android.R.id.list); 
     myList.setAdapter(adapter); 
    } 

    public void addItems(View v) { 
     listItems.add("Clicked"); 
     adapter.notifyDataSetChanged(); 
     } 
} 

XML布局代码 -

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Myusic player" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 

    <Button 
     android:id="@+id/b1" 
     style="?android:attr/buttonStyleSmall" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Add" 
     android:onClick="addItems" 
     /> 

    <ListView 
     android:id="@+id/list" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     > 
    </ListView> 

</LinearLayout> 

当我的手机上运行它时显示的错误的错误是:

The application Myusic(process myusic.app.activity) has stopped unexpectedly. Please try again. 

我认为错误是在myList.setAdapter(adapter)行,因为我试过删除这一行,并没有显示错误,但显然它当我按下按钮时。请帮我解决这个问题。提前致谢。 :)

+1

后从logcat的错误。它应该显示哪条线路导致错误。 – springrolls

+0

添加你的堆栈跟踪到你的答案,所以我们可以识别异常并解决问题 – Houcine

回答

2

错误是,您的布局XML上的ListView的编号为:@+id/list,并且您尝试使用其他编号在您的onCreate()方法上找到它;

因此改变你的代码行得到这样的ListView控件:

ListView myList=(ListView)findViewById(R.id.list); 

或更改的ListView的ID上的布局是这样的:

<ListView 
     android:id="@+android:id/list" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     /> 
相关问题