2014-11-05 50 views
0

我已經寫了一個程序,其中我有一個按鈕,我想顯示一個按鈕上單擊的年份列表,我總是得到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

回答

3

根據您的圖像,它看起來像是一個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

相關問題