qq_20258523 2018-08-08 01:25 采纳率: 0%
浏览 1163
已结题

关于 用listview的setOnItemSelectedListener 选中时改变背景

先贴下我的代码
View.OnFocusChangeListener onFocusChangeListener = new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
v.setBackground(null);
} else {
if (categoryIndex == lastLeftPosition) {
v.setBackground(JukeboxApp.getInstance().loadBitDrawable.getBd_left_click());
} else
v.setBackground(JukeboxApp.getInstance().loadBitDrawable.getBd_left_normal());
}
}
};

listViewLeft.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {

            view.setOnFocusChangeListener(onFocusChangeListener);

                Log.e("aaaaaaaaaa", "songcasetnull 2"+ view.hasFocus());                

打印出的结果是 view.hasFocus() 返回false 想请问这里是为什么,要怎么解决呀

  • 写回答

2条回答 默认 最新

  • 祈祷爱绝缘 2018-08-08 02:20
    关注

    view.setOnFocusChangeListener(onFocusChangeListener);只是设置了监听器,但是你并没有使view获得焦点啊,可以试一下调用view.requestFocus()来获取焦点

    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料