java - 删除线文本ListView找不到符号方法

标签 java android android-studio listview strikethrough

我正在做一个待办事项列表,我想在双击 ListView 后添加删除线效果,但它给了我一个错误,内容如下。

Cannot find symbol listView.setPaintFlags(listView.getPaintFlags() _ Paint.STRIKE_THRU_TEXT_FLAG)

如何解决?

listView.setOnTouchListener(new View.OnTouchListener() {
    private GestureDetector gd = new GestureDetector(MainActivity.this,new GestureDetector.SimpleOnGestureListener() {
        public boolean onDoubleTap(MotionEvent e) {
            ListView listView = (ListView) findViewById(R.id.listView);
            listView.setPaintFlags(listView.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
            return true;
        }
    });
        @Override
        public boolean onTouch(View view, MotionEvent event) {
            return gd.onTouchEvent(event);
        }
    });
}

最佳答案

我不认为ListView有在其项目上提供删除线功能的方法。我认为 ListView 项目内的 TextView 具有应如下所示工作的属性。

TextView tv = (TextView) v.findViewById(android.R.id.text1);
tv.setPaintFlags(tv.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);

您还可以考虑实现自定义适配器来获取 TextView 的引用,并使用上面的代码删除 View 。

关于java - 删除线文本ListView找不到符号方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57503736/

相关文章:

android - 如何向 AChartEngine 折线图添加可点击项目?

java - Android AGP 4.2.0 + Java 11 编译失败

android - 单击 Android Studio 时如何从项目 ListView 中获取值?

android-studio - Gradle 项目同步失败并出现 ParseError

java - Tomcat8 在关闭时杀死我的线程

java - 使用 Apache http 客户端库将默认值添加到 HTTP 请求路径

java - 为什么此代码不适用于通过 Android 进行 IMEI 调用?

Android应用程序布局背景通过布局中的控件显示

java:比较时间/日期并获得时差的正确格式

java - 如何读取 Android CamcorderProfile.QUALITY_HIGH 宽度/高度?