【问题标题】:How to change or transform an ImageView to a object or a string?如何将 ImageView 更改或转换为对象或字符串?
【发布时间】:2017-01-30 15:38:49
【问题描述】:

如何将 ImageView 更改或转换为对象或字符串?因此,我可以将该 imagview 作为字符串发送到 API。

例如,我有 4 个来自 xml 的 id imageview :

@+id/q1
@+id/q2
@+id/q3
@+id/q4

我想将所有这些图像视图更改为 Java 中的字符串。所以,我可以像这样将它们作为 JSON 发送到 API:

 {
     option_code: 'rp001o001', 
     option_value: 'Likuiditas dan keamanan investasi'
    }

option_code: 'rp001o001' 是我从 ImageView 获得的参数。如何让它成为可能?

谢谢。

【问题讨论】:

  • 您要发送ImageView 还是来自ImageView 的图像?发送 ImageView 没有意义。
  • 如果需要在 json 中发送图像和 Imageview 的单独参数 id
  • 逻辑是我有 1 个问题有 4 个答案,每个答案是 ImageView 或 ImageButton。我想将每个具有不同 id 的图像作为参数“option_code”@VladMatvienko 的值发送到 API
  • 您要发送图像还是 ID?
  • 我想将图像作为对象发送,例如将图像更改为字符串或对象。所以,我发送给 API 的图像是 option_code: 'rp001o001'。 'rp001o001' 是我发送的图像的值。可能吗? @VladMatvienko

标签: android object imageview


【解决方案1】:

byte[] 是从安卓手机发送数据到服务器的最佳方式,你需要将 Image 转换成 byte[] 检查下面的方法

//从位图转换为字节数组

public byte[] getBytesFromBitmap(Bitmap bitmap) {
    ByteArrayOutputStream stream = new ByteArrayOutputStream();
    bitmap.compress(CompressFormat.JPEG, 70, stream);
    return stream.toByteArray();
}

//获取base 64字符串

String imgString = Base64.encodeToString(getBytesFromBitmap(someImg), 
                       Base64.NO_WRAP);

感谢这个人 -https://stackoverflow.com/a/5333971/4741746

【讨论】:

    【解决方案2】:

    首先从 imageview 获取图像作为位图并将它们转换为 base64 字符串。以下是你的做法:

    BitmapDrawable drawable = (BitmapDrawable) imageView.getDrawable();
    Bitmap bitmapOrg= drawable.getBitmap();
    ByteArrayOutputStream bao = new ByteArrayOutputStream();
    bitmapOrg.compress(Bitmap.CompressFormat.JPEG, 100, bao);
    byte [] ba = bao.toByteArray();
    String ba1=Base64.encodeToString(ba,Base64.DEFAULT);
    

    这里的 ba1 是你的图片字符串。

    【讨论】:

      【解决方案3】:

      只需将您的图像转换为 base 64 字符串并将其存储在您的服务器中,然后执行相反的操作以稍后在您的应用中显示图像

      how to convert an image into base64 string

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-06-14
        • 2011-02-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-24
        • 2016-10-28
        相关资源
        最近更新 更多