1

SimpleCursorAdapter を介して TextView を行として使用して ListView にデータを入力しています。TextView の数値は、8 または 2.6786 などとして表示されます。など)方法を提案してください。コードは次のとおりです。

// THE DESIRED COLUMNS TO BE BOUND
columns = new String[] { slStock.KEY_SCRIPT,  getColumnName(2),c.getColumnName(3)};
// THE XML DEFINED VIEWS FOR EACH FIELD TO BE BOUND TO
to = new int[] { R.id.tvstockscrpt, R.id.tvqty ,R.id.tvstockrate};
// CREATE ADAPTER WITH CURSOR POINTING TO DESIRED DATA

SimpleCursorAdapter cursAdapter = new   SimpleCursorAdapter(this,R.layout.rowstock,   c,columns, to); 

lvstockdisplay.setAdapter(cursAdapter);

ここで、カーソル c が (バックグラウンドでデータベースの sql クエリから) データを取得し、それを ListView に直接入力していることに気付くでしょう。これは c.getColumnNames(3) によって入力されます。コード内のどの時点で、format ステートメントを挿入できます。

4

3 に答える 3

0

XML経由で数値をフォーマットできるとは思いませんが、以下は小数点以下2桁にフォーマットするために機能するはずです:

DecimalFormat numbers = new DecimalFormat("#.##");  

アプリケーションの必要に応じて、これを調整できるはずです。

于 2013-10-14T06:21:08.383 に答える
0

xml から値を切り上げることができないため、カーソルで値を取得した後、プログラムで実行し、それを double にして、以下のコードを使用する必要があります。

以下のようにしてみてください:

double roundTwoDecimals(double d)
{
    DecimalFormat twoDForm = new DecimalFormat("#.##");
    return Double.valueOf(twoDForm.format(d));
}
于 2013-10-14T06:22:41.127 に答える