如何在其布局中使用 android:Onclick="listViewMetod" 编写 listView 的方法?
Posted
技术标签:
【中文标题】如何在其布局中使用 android:Onclick="listViewMetod" 编写 listView 的方法?【英文标题】:How to write method for listView with android:Onclick="listViewMetod" in its layout? 【发布时间】:2012-02-23 12:52:55 【问题描述】:我正在尝试在我的主要活动中创建 5 个按钮,并尝试在其中添加新活动。
在第五个按钮中,我遇到了 listView 的问题。
在下面的代码中,我是否遗漏了 listView(View v) 方法正常工作所需的任何内容?
这是我的代码:
listActivity.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_
android:orientation="vertical" >
<ListView
android:id="@+id/listView1"
android:layout_
android:layout_ >
</ListView>
</LinearLayout>
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_
android:orientation="vertical" >
<TextView
android:layout_
android:layout_
android:text="@string/hello" />
<Button
android:id="@+id/button1"
android:layout_
android:layout_
android:onClick="newActivity"
android:text="Yeni Aktivite" />
<Button
android:id="@+id/button2"
android:layout_
android:layout_
android:onClick="toast"
android:text="Toast" />
<Button
android:id="@+id/button3"
android:layout_
android:layout_
android:onClick="web"
android:text="Web" />
<Button
android:id="@+id/button4"
android:layout_
android:layout_
android:onClick="preferences"
android:text="Preferences" />
<Button
android:id="@+id/button5"
android:layout_
android:layout_
android:onClick="listVieww"
android:text="ListView" />
</LinearLayout>
主要活动
package com.uygulamalar.odev;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
public class OdevKarmaActivity extends Activity
@Override
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
public void newActivity(View v)
Intent intent = new Intent(getApplicationContext(), NewActivity.class);
startActivity(intent);
public void toast(View v)
Toast toast=Toast.makeText(getApplicationContext(), "vazzupp", 9999);
toast.show();
public void listVieww(View v)
ListView listView1;
String jedigiller[] = "pelin","figen","aylin","gizem";
listView1=(ListView) findViewById(R.id.listView1);
listView1.setAdapter(new
ArrayAdapter<String>(this,android.R.layout.simple_list_item_1 , jedigiller));
运行时,代码会强制关闭 Android 模拟器。
我怀疑这个问题与listView(View v)方法有关,我在使用它时是否遗漏了什么?
【问题讨论】:
它会给你什么错误?在哪一行? 【参考方案1】:您试图引用在listActivity.xml
中找到的ListView
,而您已将内容视图设置为main.xml
。
要么将ListView
复制到main.xml
,要么在listVieww()
中启动一个新的Activity
,以显示列表并使用setContentView(R.layout.listActivity);
【讨论】:
以上是关于如何在其布局中使用 android:Onclick="listViewMetod" 编写 listView 的方法?的主要内容,如果未能解决你的问题,请参考以下文章
如何告诉 ProGuard 保留用于 onClick 的函数?
在 ViewPager 中使用 android:onclick