2017-07-24 153 views
0

我有一个问题,当我从活动传递数组列表到片段...我需要看到只有listivew与复选框选择(从arraylist id),而我看到列表视图之前采取id和从arraylist采取后列表视图...问题将数据从活动传递到片段

我显示我的问题与图片和代码。

与PIC:

之前通数据后

enter image description here

通数据 enter image description here

与代码:

Bundle bundle = new Bundle(); 
     bundle.putIntegerArrayList("oki", hm); 

     MyListFragment fragment = new MyListFragment(); 
     fragment.setArguments(bundle); 


     FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); 
     transaction.replace(R.id.container, fragment); 

     transaction.commit(); 

束代码来获得数据:

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     bundle = getArguments(); 
     if (bundle != null) { 

      strtext=bundle.getIntegerArrayList("oki"); 
      System.out.println("PARAM:"+strtext); 
     } 
} 

谁能帮我? 谢谢大家!

+0

从捆绑检索数据的代码在哪里? – Piyush

+0

ArrayList是字符串类型或CustomType类似于模型类型数组列表? –

+0

@ManojSrivastava arraylist包含复选框的编号,以便在整数类型中进行检查,例如 – androidiano

回答

0

请参阅本

Bundle bundle = new Bundle(); 
bundle.putStringArrayList("valuesArray", namesArray); 
namesFragment myFragment = new namesFragment(); 
myFragment.setArguments(bundle); 

和片段onCreateView方法:

@Override 
     public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 
    String strtext = getArguments().getStringArryList("valuesArray");  
    return inflater.inflate(R.layout.fragment, container, false); 
} 
+0

String strtext = getArguments()。getStringArryList(“valuesArray”); 让我崩溃的应用程序.... – androidiano

+0

哪些错误显示在你的日志? –

+0

我把尝试catch块字符串strtext = getArguments()。getStringArryList(“valuesArray”); 所以应用程序不会崩溃,但getArguments()不会获取参数.....因此arraylist为空 – androidiano

0

这是不活动之间的数据传递给片段的问题。问题在于片段在另一个片段上重叠。

将背景颜色白色设置为片段的父根(每个片段将来都不会发生这种类型的问题)。

这将解决您的问题。

+0

是的,片段重叠在另一个片段.....现在我尝试设置背景白色,因为你建议我... – androidiano

+0

我怎么能知道没有看到代码?请在此发布您的代码,以便每个人都可以查看。 –

+0

我创建另一个问题来解释我的新问题? – androidiano

相关问题