首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java Android标记图片从相机卷添加到测试中

Java Android标记图片从相机卷添加到测试中
EN

Stack Overflow用户
提问于 2022-04-17 22:05:29
回答 1查看 44关注 0票数 0

我正在创建一个用户生成的问答应用程序。用户应该能够从他们的相机卷中选择图片,他们可以给它们贴上标签,并将它们添加到他们的choice.For示例的一个小测验中,这样就会有一个名为猜测家庭成员的测试,用户上传的图片将在其中使用。

到目前为止,我已经允许用户从他们的相机卷中选择一张图片并显示在屏幕上,但是我不确定如何给图片贴上标签,并将它们添加到一个特定的测试中。

如果有人能帮我或者给我一些指导,我会很感激的。

代码语言:javascript
运行
复制
public class Editquizz extends AppCompatActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_editquizz);
        FloatingActionButton button = findViewById(R.id.Uploadbtn);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
                startActivityForResult(intent, 3);
            }
        });


    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode,Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == RESULT_OK && data != null ){
            Uri selectedImage = data.getData();
            ImageView imageView = findViewById(R.id.imageView3);
            imageView.setImageURI(selectedImage);

        }
    }


    public void onClickHandler12(View view){
        Intent myIntenet = new Intent(Editquizz.this,MainActivity.class);
        startActivity(myIntenet);
    }
EN

回答 1

Stack Overflow用户

发布于 2022-04-18 22:34:37

您可以将一个EditText添加到您的布局中,并使用它来标记图像。这确实取决于您如何存储测试,但是为标签添加一个字符串应该很简单。

测验:

String url/uri = "https://...";

String label = editText.getText().toString();

存储测试的一种方法可能是使用SharedPreferences

SharedPreferences prefs = context.getSharedPreferences("prefs", Context.MODE_PRIVATE);

prefs.edit().putString("quiz1", url + ";" + label).apply();

把它拿回来

代码语言:javascript
运行
复制
String quiz1 = prefs.getString("quiz1", "");

if (!quiz1.isEmpty()) {
   String[] split = quiz1.split(";");
   String url = "";
   String name = "";
   if (split.length >= 1) {
      url = split[0];
   }
   if (split.length >= 2) {
      name = split[1];
   }
}

或者您可以使用sqlite保存它。

房间:

https://developer.android.com/training/data-storage/room

GreenDAO:

https://greenrobot.org/greendao/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71905817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档