小编u3l*_*u3l的帖子

PopupMenu里面的适配器getView()无法正常工作

我正在使用自定义适配器并在getView()方法上添加此代码:

final ImageView popupMenu = (ImageView) v.findViewById(R.id.popupMenu);
    popupMenu.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View view) {
            popupMenu.setImageResource(R.drawable.ic_popup_menu_selected);
            PopupMenu popup = new PopupMenu(context, view);
            popup.getMenuInflater().inflate(R.menu.popup, popup.getMenu());
            popup.setOnDismissListener(new PopupMenu.OnDismissListener() {
                @Override
                public void onDismiss(PopupMenu pm) {
                    popupMenu.setImageResource(R.drawable.ic_popup_menu);
                }
            });
            popup.show();
        }
});
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误: java.lang.RuntimeException: Failed to resolve attribute at index 6

相同的代码适用于ListItemClick(),但它没有意义,因为它需要单击一次设置并再次单击以触发PopupMenu.

编辑:Logcat

11-02 17:58:51.276    1996-1996/com.android.example E/AndroidRuntime? FATAL EXCEPTION: main
Process: com.android.example, PID: 1996
java.lang.RuntimeException: Failed to resolve attribute at index 6
        at android.content.res.TypedArray.getLayoutDimension(TypedArray.java:603)
        at android.view.ViewGroup$LayoutParams.setBaseAttributes(ViewGroup.java:6423)
        at android.view.ViewGroup$MarginLayoutParams.<init>(ViewGroup.java:6591)
        at android.widget.FrameLayout$LayoutParams.<init>(FrameLayout.java:735)
        at …
Run Code Online (Sandbox Code Playgroud)

android listview popupmenu adapter

2
推荐指数
1
解决办法
2405
查看次数

"this"不会引用JQuery监听器中的div

我有一个类的下面的监听器.my-class(我正在使用waypoint插件).但是,如果我尝试调用$(this).addClass("hello"),它不会将类添加到具有该类的个人div并触发侦听器.

另一方面,如果我$(".my-class").addClass("hello")在函数内部调用,它会将类添加hello到所有实例中.my-class,这不是我想要的.

我是否误解了this应该如何使用(我是JS的新手)?它不应该引用div触发侦听器的单个因此将该类添加到该div中吗?

$(".my-class").waypoint(function(e) {
    $(this).addClass("hello");
})
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery jquery-waypoints

2
推荐指数
1
解决办法
531
查看次数

以编程方式“滑动以关闭”ListView/RecyclerView 中的项目?

我需要能够在RecyclerView没有用户实际滑动的情况下以编程方式关闭 a 中的项目(相反,我想在他们点击卡片中的按钮时关闭该项目)。我见过的很多库似乎只支持实际的滑动。

我试过使用现有的库,只是MotionEvent通过以编程方式创建自己的滑动来模拟一个,但这会干扰另一个水平滑动侦听器,所以我想知道还有什么办法可以做到,理想情况下,RecyclerView如果有人知道如何为ListView,而不是我可以尝试去适应这一点。

我已经查看了这个库以及其他库以获取灵感,但我无法弄清楚如何以编程方式触发滑动。

android listview swipe android-cardview android-recyclerview

2
推荐指数
1
解决办法
2957
查看次数

尝试逐行读取文件时出现NullPointerException(Java)?

我正在尝试逐行读取文件,但每次运行程序时,我都会在行中得到一个NullPointerException,spaceIndex = line.indexOf(" ");这显然意味着该行为null.然而.我知道我正在使用的文件正好有7行(即使我打印了值numLines,我得到了值7.然而当我尝试读取一行到我的字符串时,我仍然得到一个nullpointerexception.

// File file = some File I take in after clicking a JButton

Charset charset = Charset.forName("US-ASCII");
try (BufferedReader reader = Files.newBufferedReader(file.toPath(), charset)) {

    String line = "";

    int spaceIndex;
    int numLines = 0;
    while(reader.readLine()!=null) numLines++;

    for(int i = 0; i<numLines; i++) {
        line = reader.readLine();
        spaceIndex = line.indexOf(" ");
        System.out.println(spaceIndex);
}
Run Code Online (Sandbox Code Playgroud)

PS :(我实际上并没有使用这段代码来打印空间的索引,我替换了循环中的代码,因为它有很多,而且会让它读起来更长)

如果我要以错误的方式阅读这些行,那么如果有人可以提出另一种方式会很好,因为到目前为止,我尝试过的每一种方式都给了我同样的例外.谢谢.

java file path bufferedreader

1
推荐指数
1
解决办法
6742
查看次数

根据分辨率以编程方式设置 ImageView 大小

我有一个ImageView我想以编程方式设置的大小。所以我没有选择将不同大小的图像放在各自的drawable文件夹中。

基本上,我想LayoutParams根据屏幕分辨率进行设置,而不是执行我在下面所做的操作。如果设备是ldpimdpi,那么100,100...如果是hdpi,那么150,150等等。我怎样才能做到这一点?

ImageVIew imageView = new ImageView(this);
imageView.setLayoutParams(new ViewGroup.LayoutParams(100, 100));
layout.add(imageView);
Run Code Online (Sandbox Code Playgroud)

android screen-resolution imageview layoutparams

1
推荐指数
1
解决办法
3951
查看次数