我一直在寻找一种将数据(字符串类型)从类传递给活动的简单方法。
我找到了一些关于将数据从活动传递到类的教程,但是可以做相反的事情,将数据从类传递给活动吗?
答案 0 :(得分:1)
如果您在活动中导入该类(顺便说一下,这也是一个类),您可以轻松访问类属性。
示例:MyClass.java
package edu.user.yourappname;
public class MyClass {
public string infoToPass = "whatever";
}
MyActivity.java
package edu.user.yourappname;
import edu.user.yourappname.MyClass
public class MyActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
String myString = MyClass.infoToPass;
}
}
我没有IDE在atm中键入它可能包含一些错误:S但我希望你能得到这个想法。 如果您需要更具体的帮助,您必须提供代码示例。 另外,你想要达到什么目的? maybie那里有不同的方法。
喝彩!
答案 1 :(得分:0)
创建界面并在您的活动中实施。在您的类中传递活动实例,并随时使用interface方法调用该实例。
答案 2 :(得分:0)
更清楚的是,创建一个界面并按如下方式使用它:
public interface SomeInterface{
public void passValue(String value);
}
public SomeActivity extends Activity implements SomeInterface{
// place any code you want in your activity, onCreate, onResume, etc.
private void someMethod(){
// Wherever in your activity, initialize your class with your activity.
SomeClass someClass = new SomeClass(this);
someClass.someMethod();
}
public void passValue(String value){
// do whatever you want with your value
}
}
public class SomeClass{
private SomeInterface someInterfaceInstance;
public SomeClass(SomeInterface someInterfaceInstance){
this.someInterfaceInstance = someInterfaceInstance;
}
public void someMethod(){
// Some code...
someInterfaceInstance.passValue("Hello World!");
// Some more code...
}
}
答案 3 :(得分:0)
这是一种简单的方法 -
在你的班级中,使你想要传递的值为public static
的字符串 -
public static String pass;
然后在你的活动中,你可以直接访问它,因为它是一个像这样的公共变量 -
String receive = className.pass;