java - 使用 onListItemClick 在 ListActivity 中打开菜单

标签 java android listactivity

我试图在用户长按 ListActivity 中的条目后显示一个菜单,但我无法弄清楚。毫无疑问, list 对我来说一直是个难题,而且我仍在学习中。

封装 android.GUI;

public class Shifts extends ListActivity implements OnClickListener,
    SimpleGestureListener {


private Typeface tf = Entry.tf, tf2 = Entry.tf2;
public static int count = 1;
int dbHourTime = 0;
private SimpleGestureFilter detector;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.shifts);
    detector = new SimpleGestureFilter(this, this);



    DBAdapter DB = new DBAdapter(this);
    DB.open();
    Cursor cursor = DB.getAllShifts();
    startManagingCursor(cursor);
    cursor.moveToLast();
    count = cursor.getPosition();
    int g = count;

    cursor.moveToNext();

    String[] columns = new String[] { DB.KEY_DATE, DB.KEY_HOURS,
            DB.KEY_DAY, DB.KEY_ROWID, DB.KEY_START, DB.KEY_END };
    int[] to = new int[] { R.id.dateDisp, R.id.shiftDisp, R.id.day,
            R.id.rawId, R.id.start, R.id.finish };

    ListView ls = getListView();




    TextView SF = (TextView) findViewById(R.id.total);
    SF.setTypeface(tf);

    TextView sum = (TextView)findViewById(R.id.sum);
    sum.setTypeface(tf);


    SimpleCursorAdapter mAdapter = new SimpleCursorAdapter(this,
            R.layout.list_entry, cursor, columns, to);
    this.setListAdapter(mAdapter);


}

 @Override
 protected void onListItemClick(ListView ls, View v, int position, long id) {
  // TODO Auto-generated method stub
  super.onListItemClick(ls, v, position, id);

    CharSequence text = "Clicked";

    final int duration = Toast.LENGTH_SHORT;

    Toast toast = Toast.makeText(this, text, duration);
    toast.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER, 0, 0);

    toast.show();
 }

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.view_shifts_menu, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle item selection
    switch (item.getItemId()) {
    case R.id.back:

        finish();
        return true;
    case R.id.clear:
        DBAdapter DB = new DBAdapter(this);
        DB.open();
        DB.deleteAll();
        startActivity(getIntent());
        finish();

        return true;
    default:
        return super.onOptionsItemSelected(item);
    }
}

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub

}

@Override
public void onSwipe(int direction) {

    Intent intent = new Intent();

    switch (direction) {

    case SimpleGestureFilter.SWIPE_RIGHT:

        intent.setClass(this, Main.class);
        startActivity(intent);
        break;
    case SimpleGestureFilter.SWIPE_LEFT:

        intent.setClass(this, Entry.class);
        startActivity(intent);
        break;
    case SimpleGestureFilter.SWIPE_DOWN:

        break;
    case SimpleGestureFilter.SWIPE_UP:

        break;
    }



}

@Override
public boolean dispatchTouchEvent(MotionEvent me) {
    this.detector.onTouchEvent(me);
    return super.dispatchTouchEvent(me);
}

@Override
public void onDoubleTap() {
    // TODO Auto-generated method stub

}

@Override
public void onListItemClick(ListActivity l, View v, int position, long id) {
    // TODO Auto-generated method stub

}

}

最佳答案

这需要在 onCreate() 之外:

 @Override    // the error is with this method decleration
 protected void onListItemClick(ListView l, View v, int position, long id) { 

  super.onListItemClick(ls, v, position, id);

 }

关于java - 使用 onListItemClick 在 ListActivity 中打开菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10440630/

相关文章:

android - 如何将数组放入复选框并根据数组 id 单击它以 react native ?

android - 缩放动画循环不执行?

android - 遍历 ImageButtons 给予焦点 Android

java - 安卓.content.res.Resources$NotFoundException : File from xml type layout resource ID #0x1020014

java - 使用按钮在jsp中调用java函数

java - Java中的隐式对象类型?

Java内存模型和重新排序操作

android - 确保在 android listview 上可见?

android - 具有动态选择的每行布局的 ListView

java - 如何从 dao 函数返回整数?