2012-04-20 39 views
0

這裏有一個問題,如何在單個活動中使用其他視圖顯示listview?下面是佈局和代碼文件,它會顯示什麼錯在Eclipse上,但力而Android的虛擬機如何使列表視圖與其他視圖關聯?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 
<ListView 
    android:id="@+id/listview" 
    android:layout_width="match_parent" 
    android:layout_weight="0.8" 
    android:layout_height="0dip"/> 

<Button 
    android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:onClick="select" /> 


<Button 
    android:id="@+id/button2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:onClick="select2" /> 
</LinearLayout> 

代碼部分關閉

public abstract class firstActivity extends Activity implements OnItemClickListener{ 

Button Button1; 
Button Button2; 

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

    ListView lv = (ListView)findViewById(R.id.listview); 
    lv.setAdapter(new ArrayAdapter<String>(this, R.layout.list_item, webname)); 


    lv.setTextFilterEnabled(true); 

    lv.setOnItemClickListener(new OnItemClickListener(){ 

     public void onItemClick(AdapterView<?> parent, View view, 
      int position, long id) { 

      Toast.makeText(getApplicationContext(), ((TextView) view).getText(), 
       Toast.LENGTH_SHORT).show(); 
     } 
     }); 
} 

static final String[] webname = new String[] { 
    "http://www.YYYYYY.com","http://www.XXXXXX.com" 
}; 

感謝提前

這裏是R.layout。 LIST_ITEM

<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:padding="10dp" 
android:textSize="12sp" > 

ListAdapter有問題嗎?對不起,我是一個新手,沒有太多的知識。

+0

您能顯示LogCat的內容嗎?什麼是'R.layout.list_item'?如果你想爲listView的每一行有一個特定的佈局,你必須寫一個customAdapter – Ant4res 2012-04-20 09:33:38

回答

0

代碼中的問題是,您已將類定義爲abstract。 抽象類可讓您將常用方法名稱放在一個抽象類中,而無需編寫實現代碼。包含抽象方法的類稱爲抽象類。 請參閱java documentation。 刪除該摘要並且您的代碼將運行。

+0

感謝你的幫助,我要去嘗試 – 2012-04-21 11:08:26

+0

這裏還有另一個問題:「firstActivity類型必須實現繼承的抽象方法AdapterView。 OnItemClickListener.onItemClick(AdapterView ,View,int,long)「由Eclispe提供。是否需要實現到列表視圖部分?感謝您的幫助 – 2012-04-21 11:16:33

+0

嘗試刪除'implements OnItemClickListener',您已經在'setOnItemClickListener'內設置了'onItemClickListener'。 – Ant4res 2012-04-21 12:27:15

相關問題