我有一个适配器(扩展BaseAdapter),我试图调用notifyDataSetChanged(),但它不起作用.我相信notifyDataSetChanged()实际上是被调用的,基于使用Eclipse调试器进入它.但是,它不会调用getView().我的适配器下面的数据正在改变,正如它应该的那样.我在适配器中有一个方法updateSettings(),用于更新适配器底层的数据.如果我从ListViewActivity调用updateSettings(),我没有任何问题... notifyDataSetChanged()的行为与我期望的一样.但是当我从适配器中调用updateSettings()时,notifyDataSetChanged()不起作用.我是否尝试从适配器中调用notifyDataSetChanged()来做一些根本错误的事情?这是我的一些代码:
public View getView( int position, View convertView, ViewGroup parent )
{
Log.d( CLASS_NAME, "Entered getView()" );
View row = convertView;
_settingViewHolder = new PhoneSettingViewHolder();
final int index = position;
/* If this is the first time the list is being built, get all of the UI widgets
* and store them in a PhoneSettingViewHolder object for future use on
* subsequent writing of the list.
*/
if( row == null )
{
LayoutInflater inflater = (LayoutInflater)_context.getSystemService( Context.LAYOUT_INFLATER_SERVICE ); …Run Code Online (Sandbox Code Playgroud) 当我尝试使用我设置的其中一个配置(例如Android233)进行调试时,模拟器实际上从未启动.我只是在我的任务栏中看到一个绿色图标,上面写着"启动Android233",但它从未启动过.我让它坐在那里几个小时,它从来没有做任何事情.我不知道这是否相关,但我的模拟器不会在DDMS透视图中显示在设备视图中.我有一个物理Android设备,它显示在设备视图中.我的问题是,发生了什么,我该如何解决?
感谢您抽出宝贵时间阅读我的问题:)
我以为我已经解决了问题,但它又停止了工作.以下是更多信息:当我运行调试配置时,在我的Ecplipse窗口的右下角,它显示:"启动MyDebugConfig(100%)",然后旁边有一个绿色图标.
我查看了任务管理器,模拟器不在那里.我查看了DDMS,我的AVD未列出,LogCat或Thread中没有任何内容或其他任何内容.我有我的调试配置设置,以提示我选择一个设备,但它从来没有这样做.它只是加载我的AVD,即使我连接了手机(在DDMS中可见).我很难过.自从我开始使用Eclipse以来,我遇到了这个问题,我不知道该怎么做.
谢谢.