1

这个想法是在你最喜欢的俄罗斯方块形状的漂亮的 200x200 小方块中为程序创建 TextViews。然后这些观点转向与他们自己相关的课程。

我面临的问题是:

前两个视图与从无到有的顶部有这个阶梯差异。需要将它们并排对齐。我在调试时检查了它们的边距,它是相同的,以及它们所在的布局,以及下面的代码。

相关代码如下:

for (int i = 0; i < 2; i++) {
            TableRow tr = new TableRow(this);
            tr.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,
                    LayoutParams.WRAP_CONTENT));
            // within each tablerow, we then create the tablecolumns
            // assuming we want two columns only. Change 2 otherwise.
            for (int j = 0; j < 2; j++) {
                try {
                    TextView nyan = new TextView(this);
                    nyan.setText(pail.get(count).getProgramName());
                    nyan.setClickable(true);
                    nyan.setLayoutParams(new LayoutParams(200, 200));
                    nyan.setGravity(Gravity.CENTER);
                    //nyan.setPadding(10, 50, 10, 50);
                    nyan.setBackgroundColor(R.drawable.programlistback);
                    nyan.setSingleLine(false);
                    nyan.setOnClickListener(new View.OnClickListener() {

                        public void onClick(View v) {
                            Intent i = new Intent(v.getContext(),
                                    CourseList.class);
                            i.putExtra("selectedProgram", pail.get(count)
                                    .getProgramID());
                            startActivity(i);
                        }
                    });

                    tr.addView(nyan);
                    // when done with textview creation, update tick for nyan
                    count++;
                } catch (IndexOutOfBoundsException e) {
                    Log.i("expect", "tableOrigin - hit " + count + "th index");
                }
            }
            tabLayout.addView(tr, new LayoutParams(LayoutParams.WRAP_CONTENT,
                    LayoutParams.WRAP_CONTENT));
        }
4

0 回答 0