0

对于我的课程,我们必须创建一个应用程序,在该应用程序中,我们在广播接收器中捕获 SMS 消息,获取字符串(假定为 URL),将其动态添加到显示在片段列表中的字符串数组中。单击列表项时,我们必须将其加载到片段中的 web 视图中。

一切正常,直到这里。

问题是当我尝试将 url_act 字符串添加到列表时,列表没有更新。

这是我的代码:

public class UpdateString extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);

    String url_act = "";
    Bundle b = getIntent().getExtras();
    url_act = b.getString("url");

    UrlListFragment uf = (UrlListFragment) getFragmentManager()
            .findFragmentById(R.id.listFragment);


    String[] urls = getResources().getStringArray(R.array.urls_array);
    List<String> list = new ArrayList<String>();
    list = Arrays.asList(urls);
    ArrayList<String> arrayList = new ArrayList<String>(list);
    arrayList.add(url_act);
    urls = arrayList.toArray(new String[list.size()]);

    ArrayAdapter<String> adapter = new ArrayAdapter<String>(UpdateString.this,
            android.R.layout.simple_list_item_1, urls);
    uf.setListAdapter(adapter);



}

如果您需要更多上下文代码,请告诉我。更新

4

1 回答 1

0

你真的应该发布你的 logcat 输出来确定,否则我们不知道抛出了什么样的异常。

话虽如此,我敢打赌这是一个NullPointerException; findFragmentById()很有可能回归null。这可能是因为您从一开始就没有扩充您的 XML 资源。

于 2012-06-07T03:28:07.540 回答