-4

HTML コンテンツを含む stringbuffer を使用して、1 つの Android ネイティブ アプリケーションを開発する必要があります。

ここで私は以下のコードを使用しました:

PayPalInvoiceItem item1 = new PayPalInvoiceItem();

sb.append("<html><body><table>");

         for (int i = 0; i < Constants.mItem_Detail
                    .size(); i++) {

                String title = Constants.mItem_Detail
                        .get(i).get(
                                SingleMenuItem.KEY_PNAME);

                String qty = Constants.mItem_Detail.get(i)
                        .get(SingleMenuItem.KEY_QTY);

                String cost = Constants.mItem_Detail.get(i)
                        .get(SingleMenuItem.KEY_PRICE);

                String total = Constants.mItem_Detail
                        .get(i).get(
                                SingleMenuItem.KEY_TOTAL);
                 total_count=total_count+Integer.parseInt(qty);


            StringBuffer buffer = sb.append("<tr>" + "<td>" + title
                        + "</td><td>" + qty + " * " + cost
                        + "</td>" + " = <td>" + total
                        + "  " + "</td></tr>"); 

             item1.setName(buffer.toString());

今、私はアプリケーションを実行する必要があります。これは、出力が次のようになっていることを意味します

<html><body><table>"<tr>" "<td>"krishna
                        "</td><td>" 1 " * " 100
                        + "</td>" = <td>" 100
                        + "  " + "</td></tr>

しかし、私は次のようなo/pが必要です:

krishna  1   100   100
   veni       2   30       60

どのようにできるのか????私を助けてください ???

編集:

ここで、下の行item1.setName(buffer.toString()); を次のように変更する必要があります

item.setName(buffer.toString(), "text/html; charset=utf-8"); means am getting following error:

タイプ PayPalInvoiceItem のメソッド setName(String) は、引数 (String, String) には適用できません。これらのエラーを解決するにはどうすればよいですか????

4

1 に答える 1

2

あなたがしようとしている「アイテム」は何setNameですか?物事の音によって、おそらく次のWebViewように作成する必要があります。

WebView view = new WebView(this);
view.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
view.loadData(stringBuffer.toString(), "text/html", "UTF-8");
setContentView(view);

また、HTMLが正しく終了していないようです。つまり、最後の書き込みは次のようにStringBufferなります。

stringBuffer.append("</table></body></html>");

また、あなたの行をチェックしてください:

total_count=total_count+Integer.parseInt(qty);

そうではないはずです:

total_count=total_count+Integer.parseInt(total);
于 2013-01-28T14:22:21.493 に答える