我创建了这个简单的方法:
private void getCheckedItems() {
int len = mGrid.getCount();
SparseBooleanArray checked = mGrid.getCheckedItemPositions();
List <Integer> numberList = new ArrayList<>();
for (int i = 0; i < len; i++)
if (checked.get(i)) {
Integer item = mNumber.get(i);
numberList.add(item);
Integer[] mNumberArray = numberList.toArray(new Integer[numberList.size()]);
Log.d("Played Number: ", ""+ Arrays.toString(mNumberArray));
}
}
使用这种控制方法,从网格中选择了这些元素并返回。
现在我想拆分数组以放入一些TextView
!我该怎么办?
答案 0 :(得分:0)
Arrays.toString(mNumberArray)
会给你这样的字符串[2,3,45,67]
只需删除方括号[],你就会得到一个像"2,3,45,67"
这样的字符串。现在您可以轻松拆分字符串并获取字符串数组。将此数组的每个元素设置为每个文本视图
答案 1 :(得分:0)
如果要将列表中的每个值插入单个textView,并且如果定义了textViews,则可以执行以下操作:
firstTextView.setText(numberList.get(0));
secondTextView.setText(numberList.get(1)); //and so on
如果您没有在布局xml中定义textViews,您可以获得父布局并在其中插入textViews,如下所示:
LinearLayout parentLayout = (LienarLayout)findViewById(R.id.myTextBoxesParent);
for(int i = 0; i < numberList.size(); i++){
TextView t = new TextView(getApplicationContext());
t.setText(numberList.get(i));
parentLayout.addView(t);
}