簡體   English   中英

子ListView不起作用

[英]child ListView doesn't work

我正在編寫一個模擬http://www.rottentomatoes.com/mobile/網站的android應用程序,我在listView中有一個電影列表,當我單擊單個電影時,我想要一個評論列表(如果您單擊該網站,您將看到它們),但是當我單擊時,我的應用程序停止工作

主要活動

public void onItemClick(AdapterView<?> parent, View view, int position,
            long id) {
        System.out.println ("clicked");
        Movie data = (Movie) adapter.getItem(position);
        String url = data.getLinks().getReviews();
        System.out.println (url);
        Intent intent = new Intent();
        intent.setClass(getActivity(), MovieDetailsActivity.class);
        intent.setData(Uri.parse(url));
        startActivity(intent);

    }

第二個活動-假設開始一個列表

package charnetskaya.rottentomatoes;


public class MovieDetailsActivity extends Activity {

static String url;

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.movie_details);

    if (savedInstanceState == null) {
        getFragmentManager().beginTransaction()
                .add(R.id.container, new PlaceholderFragment()).commit();
    }

    System.out.println("CREATED");
    Intent intent = getIntent();
    Uri uri = intent.getData();
    url = uri.toString();
}

public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();
    if (id == R.id.action_settings) {
        return true;
    }
    return super.onOptionsItemSelected(item);
}

public static class PlaceholderFragment extends Fragment implements
        OnItemClickListener {

    private ReviewsAdapter adapter;

    public PlaceholderFragment() {

    }

    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.movie_details, container,
                false);
        ListView list = (ListView) rootView.findViewById(R.id.reviewsList);
        adapter = new ReviewsAdapter(inflater);
        list.setAdapter(adapter);
        System.out.println("HERE");
        DownloadReviews task = new DownloadReviews(url);
        task.execute(new Void[0]);
        System.out.println("THERE");
        return list;

    }

    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
            long arg3) {
        // TODO Auto-generated method stub

    }

}

}

錯誤信息 在此處輸入圖片說明

在您的PlaceholderFragment onCreateView嘗試返回rootView而不是list

public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.movie_details, container,
                false);
        ListView list = (ListView) rootView.findViewById(R.id.reviewsList);
        adapter = new ReviewsAdapter(inflater);
        list.setAdapter(adapter);
        System.out.println("HERE");
        DownloadReviews task = new DownloadReviews(url);
        task.execute(new Void[0]);
        System.out.println("THERE");
        return rootView;

    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM