2012-04-20 58 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

相关问题