有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android:RecyclerView表现为GridLayout

我需要创建一个包含3列的RecyclerView,其中有一个按钮,单击该按钮时,会将自定义视图添加到RecyclerView中。当我在视图中单击时,它会被删除。例如:我添加了5个视图,如果我点击数字3,数字3会被破坏,数字4 e 5会后退一步。我已经在GridLayout中创建了它,但我希望它在RecyclerView中,我知道我需要一个适配器、一个Viewholder和一个LayoutManager。那么这是怎么做到的呢

这是GridLayout的外观:

public class MainActivity extends AppCompatActivity {
    GridLayout gridLayout;
    static int i;
    static int n = 1000;
    private Button theButton;

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

        gridLayout = (GridLayout)findViewById(R.id.gamehistory);
        Button b = (Button)findViewById(R.id.Button01);

        b.setOnClickListener(new View.OnClickListener(){
            public void onClick(View v) {

                theButton = new Button(MainActivity.this);
                TextView theText = new TextView(MainActivity.this);
                theText.setGravity(Gravity.CENTER_HORIZONTAL);
                final LinearLayout theLayout = new LinearLayout(MainActivity.this);

                theLayout.setOrientation(LinearLayout.VERTICAL);
                theLayout.setBackgroundColor(Color.parseColor("#8BAAC3"));
                theLayout.setId(++i);
                theButton.setId(++n);
                theButton.setText(theButton.getId() + "");
                theText.setText(theLayout.getId() + "");
                theLayout.addView(theButton);
                theLayout.addView(theText);
                gridLayout.addView(theLayout);
                GridLayout.LayoutParams lp = (GridLayout.LayoutParams) theLayout.getLayoutParams();
                lp.setMargins(10, 10, 10, 10);

                theButton.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        gridLayout.removeView(theLayout);
                    }
                });
            }
        });
    }
}

关于我尝试使用回收视图,我尝试了guide in a blog,但没有成功


共 (0) 个答案