如何在android自定义适配器中创建trackballevent?

发布于 2024-09-01 10:08:11 字数 1700 浏览 3 评论 0原文

我正在使用以下代码为列表视图创建自定义适配器。 现在我想在其中使用轨迹球单击事件,但我不知道该怎么做,任何人都可以帮助我在自定义适配器中创建 ontracballevent 吗? 我尝试写几行但无法解决它。

public  class EfficientAdapter extends BaseAdapter implements Filterable {
        private LayoutInflater mInflater;
        private Context context;
         int pos;

        public EfficientAdapter(Context context) {

          mInflater = LayoutInflater.from(context);
          this.context = context;
        }

        public View getView(final int position, View convertView, ViewGroup parent) {
          ViewHolder holder;

            convertView = mInflater.inflate(R.layout.adaptor_contentposts, null);
convertView.setOnClickListener(new OnClickListener() {
              @Override
              public void onClick(View v) {

//点击功能 } });

 MotionEvent event= MotionEvent.CREATOR.createFromParcel(null);
            switch (event.getAction()) 
            {
            case MotionEvent.ACTION_DOWN:
                //display click message
            }
            convertView.onTrackballEvent(event);





 return convertView;
        }

  class ViewHolder {
          TextView textLine;
          TextView textLine2;
          TextView PostedByAndPostedOn;
          ImageButton ImgButton;

        }

        @Override
        public Filter getFilter() {
            return null;
        }

        @Override
        public long getItemId(int position) {
            return 0;
        }

        @Override
        public int getCount() {
          return ad_id.length;
        }

        @Override
        public Object getItem(int position) {
          return ad_id[position];
        }

      }

i am using following code to create custom adapter for listview.
now i want to use trackball click event in it but i dont know how to do that can any one help me out in creating ontracballevent in custom adapter?
i have tried writing few lines but not able to solve it.

public  class EfficientAdapter extends BaseAdapter implements Filterable {
        private LayoutInflater mInflater;
        private Context context;
         int pos;

        public EfficientAdapter(Context context) {

          mInflater = LayoutInflater.from(context);
          this.context = context;
        }

        public View getView(final int position, View convertView, ViewGroup parent) {
          ViewHolder holder;

            convertView = mInflater.inflate(R.layout.adaptor_contentposts, null);
convertView.setOnClickListener(new OnClickListener() {
              @Override
              public void onClick(View v) {

//click functionality
}
});

 MotionEvent event= MotionEvent.CREATOR.createFromParcel(null);
            switch (event.getAction()) 
            {
            case MotionEvent.ACTION_DOWN:
                //display click message
            }
            convertView.onTrackballEvent(event);





 return convertView;
        }

  class ViewHolder {
          TextView textLine;
          TextView textLine2;
          TextView PostedByAndPostedOn;
          ImageButton ImgButton;

        }

        @Override
        public Filter getFilter() {
            return null;
        }

        @Override
        public long getItemId(int position) {
            return 0;
        }

        @Override
        public int getCount() {
          return ad_id.length;
        }

        @Override
        public Object getItem(int position) {
          return ad_id[position];
        }

      }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夏九 2024-09-08 10:08:11

适配器与“ontracballevent”无关。您要么需要子类化 ListView 要么在您的活动中处理它。

Adapters have nothing to do with "ontracballevent". You either need to subclass ListView or handle it in your activity.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文