如何显示按钮上的列表视图点击相同的页面?

问题描述:

我已经写了一个程序,其中我有一个按钮,我想显示一个按钮上单击的年份列表,我总是得到onclick方法的按钮错误(空指针异常),我也是张贴的我多么希望我的名单看图片,我有完全一样的按钮,并请建议我在哪里,我错了如何显示按钮上的列表视图点击相同的页面?

enter image description here

下面是我的代码

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; 
} 
+0

ListView不是你正在显示的图像。 – 2014-11-05 20:17:33

+0

是的,我已经尝试了一个微调,它的工作原理,但我有一个与背景imagae按钮与上述相同,我想要一个列表视图像上面的图像一样下拉,是否有可能做到这一点与列表视图?如果是的话,我该怎么做onclick? – 2014-11-06 06:22:29

+0

如果您想使用ListView与您一起工作,您可以通过点击按钮迁移到带有ListView的下一个活动,然后您可以根据所选的选项执行不同的功能。我不确定的是,如果你可以在同一个活动中做到这一切。如果您想要选择不同的活动,我可以帮助您。 – 2014-11-06 07:38:46

根据您的图像,它看起来像是一个Spinner

您可以使用状态选择器和9修补程序可绘制来更改默认微调器的外观。 Here是一个很不错的教程。

+0

Thumbsup,我笑我的屁股! – 2014-11-05 20:13:39

+0

@Justin Powell:先生我有一个带有箭头的背景图像的按钮,我不想要一个微调,但是微调是为我工作的,但我想尝试一个不同的事情,当我点击按钮时,一个列表应该显示为与我发布的图片相同的下拉菜单,我不知道它是否会起作用,以清除我的疑问并学习我在这里发布的信息,以询问您的专家如何操作 – 2014-11-06 06:33:58

+0

我认为您应该使用微调。你可以改变它的外观,看看我的编辑。 – 2014-11-06 12:37:08