Android 如何在同一页面上单击按钮时显示listview?
我写了一个程序,其中我有一个按钮,我想显示一个年的列表,当点击按钮时,我总是在按钮的onclick方法上得到一个错误(空指针异常),我还发布了一张我希望列表看起来如何的图片,我有完全相同的按钮,请告诉我哪里出了问题 下面是我的代码Android 如何在同一页面上单击按钮时显示listview?,android,listview,Android,Listview,我写了一个程序,其中我有一个按钮,我想显示一个年的列表,当点击按钮时,我总是在按钮的onclick方法上得到一个错误(空指针异常),我还发布了一张我希望列表看起来如何的图片,我有完全相同的按钮,请告诉我哪里出了问题 下面是我的代码 public class Result_Date extends Activity { ImageView iv; String[] years = {"2000", "2001", "2002", "2003", "2004", "2005",
public class Result_Date extends Activity {
ImageView iv;
String[] years = {"2000", "2001", "2002", "2003", "2004",
"2005", "2006", "2007", "2008", "2009", "2010", "2011", "2012",
"2013", "2014" };
CustomAdapter customAdapter;
Button buttonShowYears;
AdapterNew adapter;
ListView listShowYear;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.result_list_year);
buttonShowYears = (Button) findViewById(R.id.btnShowYear);
listShowYear = (ListView) findViewById(R.id.listView1);
buttonShowYears.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
customAdapter = new CustomAdapter(getBaseContext(),
R.layout.row, years);
//also tried with the android.R.layout.simple_list_item_1 but not working
listShowYear.setAdapter(customAdapter);
}
});
我的CustomAdapter.java
public class CustomAdapter extends ArrayAdapter<String> {
Context context;
ArrayList<String> arrayList;
String[] years;
public CustomAdapter(Context context, int resource, String[] years) {
super(context, resource, years);
this.context = context;
this.years = years;
}
public static class ViewHolder {
TextView txtname;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
LayoutInflater vi = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = vi.inflate(R.layout.row, null);
holder = new ViewHolder();
holder.txtname = (TextView) convertView.findViewById(R.id.txtName);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.txtname.setText(years.length);
return convertView;
}
公共类CustomAdapter扩展了ArrayAdapter{
语境;
ArrayList ArrayList;
字符串[]年;
公共CustomAdapter(上下文上下文,int资源,字符串[]年){
超级(背景、资源、年份);
this.context=上下文;
本年=年;
}
公共静态类视图持有者{
TextView-txtname;
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
ViewHolder=null;
if(convertView==null){
LayoutInflater vi=(LayoutInflater)上下文
.getSystemService(上下文布局\充气机\服务);
convertView=vi.充气(R.layout.row,空);
holder=新的ViewHolder();
holder.txtname=(TextView)convertView.findViewById(R.id.txtname);
convertView.setTag(支架);
}否则{
holder=(ViewHolder)convertView.getTag();
}
holder.txtname.setText(年长);
返回视图;
}
根据您的图像,看起来您想要一张照片
您可以使用状态选择器和9-patch drawables更改默认微调器的外观。这是一个非常好的教程。根据您的图像,看起来您需要一个新的微调器
您可以使用状态选择器和9-patch drawables更改默认微调器的外观。这是一个非常好的教程。根据您的图像,看起来您需要一个新的微调器
您可以使用状态选择器和9-patch drawables更改默认微调器的外观。这是一个非常好的教程。根据您的图像,看起来您需要一个新的微调器
您可以使用状态选择器和9-patch可绘图工具更改默认微调器的外观。这是一个非常好的教程。Thumbsup,我笑得屁滚尿流!@Justin Powell:先生,我有一个按钮,背景图像带有箭头,我不想要微调器,但是的,微调器对我有用,但我想尝试另一件事,当我单击时在按钮上,一个列表应该以下拉列表的形式出现,与我发布的图片相同,我不知道它是否有效,为了澄清我的疑问,为了了解我在这里发布的内容,我想你应该使用旋转器。你可以改变它的外观,请看我的编辑。拇指,我笑了我的屁股!@Justin Powell:先生,我有一个按钮n有一个带箭头的背景图像,我不想要一个旋转器,但是是的旋转器对我有效,但是我想尝试另一件事,当我点击按钮时,一个列表应该显示为与我发布的图像相同的下拉列表,我不知道它是否有效,以澄清我的疑问,并了解我在这里发布的内容,以询问u专家做什么我认为你应该使用旋转器。你可以改变它的外观,看我的编辑。拇指,我笑了我的屁股!@Justin Powell:先生,我有一个按钮,它有一个带箭头的背景图像,我不想要旋转器,但是的,旋转器对我有用,但我想尝试另一件事,当我点击按钮时,列表应该显示为箭头下拉菜单与我发布的图片相同,我不知道它是否有效,为了澄清我的疑问,为了了解我在这里发布的内容,我想你应该使用旋转器。你可以改变它的外观,请看我的编辑。拇指,我笑了我的屁股!@贾斯汀·鲍威尔:先生,我有一个按钮,背景图片上有一个arrow,我不想要一个旋转器,但是是的,旋转器为我工作,但是我想尝试另一件事,当我点击按钮时,一个列表应该显示为一个下拉列表,与我发布的图像相同,我不知道它是否会工作,为了澄清我的疑问,为了了解我在这里发布的内容,我想询问你的专家,我认为你应该使用旋转你可以改变它的外观,请看我的编辑。ListView不是你在图像中显示的。是的,我已经尝试使用微调器,它可以工作,但我有一个与上面相同的背景图像按钮,我希望ListView与上面的图像一样下拉,是否可以使用ListView进行此操作?如果可以,我如何使用h onclick??如果要使用ListView,单击按钮即可迁移到具有ListView的下一个活动,然后您可以根据所选选项执行不同的功能。我不确定的是,您是否可以在同一个活动中执行所有这些操作。如果您需要其他活动的选项,我可以帮助您。ListView是不是您在图像中显示的内容。是的,我已经尝试使用微调器,它可以工作,但我有一个按钮,背景图像与上图相同,我希望listview下拉列表与上图相同,是否可以使用listview进行此操作?如果可以,我如何使用onclick进行此操作?如果您希望使用listview进行此操作,您可以单击按钮,使用ListView迁移到下一个活动,然后您可以根据所选的选项执行不同的功能。我不确定的是,您是否可以在同一个活动中执行所有这些操作。如果您希望在其他活动中使用这些选项,我可以帮助您。ListView不是您在图像中显示的内容。是的,我已经尝试过了一个微调器,它可以工作,但我有一个按钮,背景图像与上图相同,我想让listview与上图一样下拉,是否可以使用listview?如果可以,我如何使用onclick?如果你想使用listview工作,你可以通过单击我不确定的是,你是否能在同一个活动中完成所有这些