Android:onclicklistener被迫关闭?

时间:2010-12-14 16:06:57

标签: android onclick

如果没有onclick监听器实现及其相关代码,活动就可以正常工作。但当onclick听众在那里它只是强迫关闭。

这是我的代码:

public class Names extends ListActivity implements OnClickListener {
    private static String[] FROM = { _ID, NAME, ADDRESS, AGE };
       private static int[] TO = { R.id.rowid, R.id.name, R.id.address, R.id.age};
       private static String ORDER_BY = NAME + " DESC";


       @Override
       public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.main);

          Cursor cursor = getNames();
          showNames(cursor);

        // Set up click listeners
            View addButton = findViewById(R.id.add_button);
            addButton.setOnClickListener(this);        


       }


       private Cursor getNames() {
          // Perform a managed query.
          return managedQuery(CONTENT_URI, FROM, null, null, ORDER_BY);
       }

       private void showNames(Cursor cursor) {
          // data binding
          SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
                R.layout.names, cursor, FROM, TO);
          setListAdapter(adapter);
       }


      public void onClick(View v) {
         switch (v.getId()) {
            case R.id.add_button:
                Cursor cursor = getNames();
                showNames(cursor );
                break;                      
         }
     }
}

我做错了什么?非常感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

在这些行中,    查看addButton = findViewById(R.id.add_button);             addButton.setOnClickListener(本);

指定您使用的是哪个视图而不是使用View。 例如: - 按钮addButton =(Button)findViewById(R.id.add_button); 可能你没有投射出你想要事件的View onclicklistener