如何将列乘以ListView,Android中的数字

时间:2013-02-23 22:51:42

标签: java android listview

我从数据库中选择数据。 在一列中的数据,您必须转换为千克,我需要乘以一列的因子。磅中sets_weight列中的数据,并且必须以千克为单位显示,而无需修改数据库 如何正确地做到这一点。有任何想法吗!谢谢!

onSets = db.getSets(exesIdsColExes, toprog_dif);    
    listSets.setAdapter(new SimpleCursorAdapter(this, 
            R.layout.itemsets, onSets, 
            new String[] {"sets_ids", "sets_weight", "sets_ones"},  
            new int[] {R.id.itemsets_ids, R.id.itemsets_weight, R.id.itemsets_ones}) {
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
                View row = super.getView(position, convertView, parent);
                // Here we get the textview and set the color
                Typeface fontTitleProg = Typeface.createFromAsset(getAssets(), "AGHELVETICA.TTF");
                TextView itemsets_ids = (TextView) row.findViewById(R.id.itemsets_ids);
                itemsets_ids.setTypeface(fontTitleProg, 1);
                itemsets_ids.setGravity(0x05);

                TextView itemsets_weight = (TextView) row.findViewById(R.id.itemsets_weight);
                itemsets_weight.setTypeface(fontTitleProg, 1);
                itemsets_weight.setGravity(0x01);

                TextView itemsets_ones = (TextView) row.findViewById(R.id.itemsets_ones);
                itemsets_ones.setTypeface(fontTitleProg, 1);
                itemsets_ones.setGravity(0x01);   

                return row;
        }
    });

1 个答案:

答案 0 :(得分:0)

我从未做过任何Android开发,但是the documentation of SimpleCursorAdapter说:

  

首先,如果SimpleCursorAdapter.ViewBinder可用,则调用setViewValue(android.view.View,android.database.Cursor,int)。如果返回的值为true,则发生绑定。如果返回的值为false并且要绑定的视图是TextView,则调用setViewText(TextView,String)。如果返回的值为false并且要绑定的视图是ImageView,则调用setViewImage(ImageView,String)。

所以你只需要传递一个SimpleCursorAdapter的自定义实例,如果列索引为1(第二列),将从光标获取以磅为单位的值,将其乘以将磅数转换为kg,将结果设置为视图的文本,并返回true。对于其他列,返回false。