我正在尝试让我的对象Parcelable.但是,我有自定义对象,这些对象具有ArrayList我所做的其他自定义对象的属性.
最好的方法是什么?
请问任何人请告诉我android中存在的所有IPC机制是什么.
据我所知:
1)意图,
2)粘合剂.
我在创建意图以及使用 getParcelableExtra() 方法将对象移交到它时遇到问题。该项目的目标是创建回收者视图。如果选择了回收器中的某个项目,则会启动新意图并应显示更详细的数据。
因为数据是从外部 MySQL DB 获取的,所以我使用 Volley 来处理大部分网络内容。
回收器在 Volley onResponse() 方法内实现,该方法首先在应用程序启动 (onCreate) 时调用。到目前为止,一切正常,回收器已正确加载和显示。
public class UserAreaActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_user_area);
initializeRecycler();
}
public void initializeRecycler() {
operations.getFoodFromDB(getFoodID(), new IDatabaseOperations() {
@Override
public void onSuccess(final ArrayList<Food> food_list) {
mRecyclerView = (RecyclerView) findViewById(R.id.recyclerView);
mLayoutmanager = new LinearLayoutManager(UserAreaActivity.this);
mAdapter = new FoodAdapter(food_list);
mRecyclerView.setLayoutManager(mLayoutmanager);
mRecyclerView.setAdapter(mAdapter);
mAdapter.setOnItemClickListener(new FoodAdapter.OnItemClickListener() {
@Override
public void OnItemClick(int position) {
Intent intent = new Intent(UserAreaActivity.this, FoodProfile.class);
GETS CORRECT OBJECT----->intent.putExtra("food", food_list.get(position));
startActivity(intent);
} …Run Code Online (Sandbox Code Playgroud)