【问题标题】:How can I return a string in a method created by me at Android Studio?如何在我在 Android Studio 中创建的方法中返回字符串?
【发布时间】:2020-03-31 17:58:08
【问题描述】:

如何将 Java Android Studio 中的活动中的字符串值返回给另一个?我正在尝试下面这 3 个代码,以获取我想要的路径,并将其返回为字符串值。

一些尝试:

1)

     public static String s = Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+UUID.randomUUID().toString()+"audio_record.3gp";

2)

public static String retornaString(){
            String s=null;
            s = Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+ UUID.randomUUID().toString()+"audio_record.3gp";
            return s;
        }

3)

 public static retornar(String retorno){

            retorno = Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+UUID.randomUUID().toString()+"audio_record.3gp";
            System.out.println(retorno);

            return retorno;
        }

3) 中的错误:

  • 方法声明无效;需要返回类型

    • 此处不允许使用修饰符“静态”
    • 无法从结果类型为 void 的方法返回值

如何解决?我必须使用哪种方法?

谢谢。

【问题讨论】:

  • 您可以通过Intent在活动之间分享内容
  • 在您的第三个选项中,您错过了返回类型public static String retornar(String retorno)
  • 你是否试图让一个活动中的字符串对另一个活动可用?
  • 这可能有你正在寻找的答案:developer.android.com/training/basics/intents/result
  • @landrykapela 是的,没错!

标签: android string android-studio methods static


【解决方案1】:
String yourStringVariable = Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+UUID.randomUUID().toString()+"audio_record.3gp";

从Activity1开始Activity2时,请执行以下操作:

Intent intent = new Intent(Activity1.this,Activity2.class);
intent.putExtra("key",yourStringVariable);
startActivity(intent);

在Activity2中检索字符串

String myStringFromActivity1 = getIntent().getStringExtra("key");

你可以在这里阅读这篇文章https://medium.com/@peterekeneeze/passing-data-between-activities-2d0ef122f19d

【讨论】:

    猜你喜欢
    • 2013-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-15
    • 1970-01-01
    • 2011-06-03
    • 2015-03-29
    • 1970-01-01
    相关资源
    最近更新 更多