【问题标题】:create tableview using html content in android在android中使用html内容创建tableview
【发布时间】:2013-01-28 11:39:01
【问题描述】:

我必须使用带有 html 内容的 stringbuffer 开发一个 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, 细绳) 我该如何解决这些错误????

【问题讨论】:

    标签: java android html append stringbuffer


    【解决方案1】:

    您尝试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);
    

    【讨论】:

    • 这些是原生 android 应用程序。在这里我必须将多个产品详细信息发送到 paypal。这就是我使用了以下 item.setName .....PayPalInvoiceItem item1 = new PayPalInvoiceItem(); item1.setName(buffer1.toString());
    猜你喜欢
    • 1970-01-01
    • 2012-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-12
    • 2020-05-01
    • 2012-05-09
    • 2014-04-11
    相关资源
    最近更新 更多