【问题标题】:How to set each item retrieved from SQLite database into a Textview of it's own如何将从 SQLite 数据库中检索到的每个项目设置为它自己的 Textview
【发布时间】:2017-06-03 01:50:39
【问题描述】:

现在,我有一个数据库,其中包含一个表,其中包含一个 TEXT 类型的单列。我希望能够从该表中检索数据,并且对于表中的每个字符串,我希望将其插入到它自己的 TextView 中。我希望 TextViews 以垂直 LinearLayout 方式排列。 我知道检索到的数据是在使用 ListView 的活动中呈现的,但我想为每个单独的 TextView 设置,因为我以后想设置每个 TextView 可点击并给每个 TextView 一些功能。 请帮我编写代码并告诉我问题中是否需要包含任何项目文件。

【问题讨论】:

    标签: android sqlite android-layout android-sqlite


    【解决方案1】:

    试试这个

    Database 中的Cursor 中获取数据并在下面的方法中传递此游标,它将returnview 传递给setContentView(view),您可以将其传递给setContentView(view)

     public LinearLayoutCompat defaultPage(Cursor mCursor) {
            LinearLayoutCompat layout = new LinearLayoutCompat(this);
    
            layout.setLayoutParams(new LinearLayoutCompat.LayoutParams(LinearLayoutCompat.LayoutParams.MATCH_PARENT, LinearLayoutCompat.LayoutParams.MATCH_PARENT));
            layout.setGravity(Gravity.CENTER);
            layout.setOrientation(LinearLayoutCompat.VERTICAL); 
            for(int i=0;i<mCursor.getCount();i++) {
                mCursor.moveToPosition(i);
                AppCompatTextView defaultText = new AppCompatTextView(this);
                defaultText.setText(mCursor.getString(mCursor.getColumnIndex("TOUR_COLUMN_NMAE")));
                defaultText.setTextSize(20);
                defaultText.setTypeface(null, Typeface.BOLD);
                defaultText.setOnClickListener(new OnClickListener() {
                    @Override
                    public void onClick(View arg0) {
                        // Toast.makeText(mContext, "Work in progress", Toast.LENGTH_SHORT).show();
                    }
                });
                layout.addView(defaultText);
            }    
            return layout;
        }
    

    【讨论】:

    • 当我在 setcontentview(layout) 中传递布局时,它会将整个活动布局设置为这个 LinearLayoutCompat。如果我想在我的布局上保持一个单一的 TextView 完好无损,你能帮我吗?这样每当我使用 setcontentview 时,除了那个单一的 TextView 之外的所有东西都会改变吗?
    • 然后使用父LinearLayout制作一个xml布局并设置该父的Orientation垂直并按顺序放置一个textView和LinearLayout并通过findViewById()在java中投射textView和LinearLayout并将你的标签放在textView中并放置LinearLayoutCompat使用 LinearLayout.addView() 方法在子 LinearLayout 中查看。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-11
    • 1970-01-01
    • 1970-01-01
    • 2012-08-31
    • 2018-02-26
    • 2016-02-14
    相关资源
    最近更新 更多