相关疑难解决方法(0)

Android ArrayList <MyObject>作为parcelable传递

现在修改代码以反映已接受的解决方案.

现在,这是一个如何将自定义ArrayList传递给DialogFragment的工作示例.

我正在使用newInstance上的Bundle将自定义对象的ArrayList传递给DialogFragment.在newInstance中正确接收了arraylist.对putParcelable的调用执行正常(无错误),但在ArrayList对象的parcelable代码中放置断点表明在设置或获取数据时未调用parcel方法.

我是否正确为ArrayList创建一个LocalityList类并使其成为parcelable,或者Locality类本身是否可以分类?

DialogFragment

/**
 * Create a new instance of ValidateUserEnteredLocationLocalitySelectorFragment, providing "localityList"
 * as an argument.
 */
public static ValidateUserEnteredLocationLocalitySelectorFragment newInstance(LocalityList localityList) {

    ValidateUserEnteredLocationLocalitySelectorFragment fragmentInstance = new ValidateUserEnteredLocationLocalitySelectorFragment();

    // Supply location input as an argument.
    Bundle bundle = new Bundle();
    bundle.putParcelable(KEY_LOCALITY_LIST, localityList);
    fragmentInstance.setArguments(bundle);

    return fragmentInstance;
}


/**
 * Retrieve the locality list from the bundle
 */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mLocalityList = getArguments().getParcelable(KEY_LOCALITY_LIST);
}


 @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) { …
Run Code Online (Sandbox Code Playgroud)

parameters android parcelable

23
推荐指数
2
解决办法
3万
查看次数

将活动从listview传递到另一个活动

我试图将此主要活动的数据传递给另一个活动

我成功地在活动之间发送数据....就像从Edit-text到下一个活动的数据,putExtra以及GetExtra方法和传递作为意图

  • 但是我在这个特殊任务中面临挑战,它涉及将数据从listview发送到普通活动
  • 数据在JSON的列表视图中填充,因此在单击一行时如何将该行的数据发送到新活动

有任何想法吗,


ativity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <ListView
        android:id="@+id/listViewID"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" 

        android:layout_gravity="center">
    </ListView>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

MainActivity.java

public class MainActivity extends Activity {

    // url to make request
    private static String url = "http://54.218.73.244:7002/";
    List<Item> yourData = new ArrayList<Item>();

    ProgressDialog progressDialog;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //Instantiating ProgressDialog with onCreate method
        progressDialog=new ProgressDialog(MainActivity.this);
        new ParsingAsync().execute();

    }

    private class ParsingAsync extends AsyncTask<Void, Void, Void>
    {

        @Override
        protected void onPreExecute() {
            // …
Run Code Online (Sandbox Code Playgroud)

android listview android-intent

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