android-在活动之间传递类的实例

android-在活动之间传递类的实例,第1张

概述如果我获得了A类和B类,则A类充当具有2个按钮的菜单,一个按钮用于连接一个进行登录.当我按连接时,我运行此方法:privatevoidconnect(){Threadt1=newThread(){publicvoidrun(){connection_class=newConnectionClass();connection_class.run(

如果我获得了A类和B类,则A类充当具有2个按钮的菜单,一个按钮用于连接一个进行登录.当我按连接时,我运行此方法:

    private voID connect(){    Thread t1 = new Thread(){        public voID run(){    connection_class = new ConnectionClass();    connection_class.run();        }    };t1.start();}

该调用我的ConnectionClass,它在构造函数中执行此 *** 作:

    public ConnectionClass(){        socket = new Socket("address", port);        in = new BufferedReader(new inputStreamReader(socket.getinputStream()));        out = new PrintWriter(new BuffereDWriter(new OutputStreamWriter(socket.getoutputStream())), true);}

可以很好地与服务器连接,然后按登录 *** 作(没有onClick的东西):

        connection_class.MethodToWritetoServer("CommandThatLogsMeIn");             Intent i = new Intent().setClass(v.getContext(), Class.class);                  startActivity(i);

这可以正常工作,但是当im在Class B中时,我想使用它的相同实例.我可以做一个新的线程和该类的实例,但这会破坏开始菜单的目的,并要求我再次登录.

启动实例时是否有可能将实例作为参数传递活动,或者androID的执行方式是什么?

作为一个旁注,我并不是真的需要菜单,但是我在课业分配之前有一些空闲时间,并认为我也可以尝试一下.

解决方法:

我昨天刚完成一个这样的项目.

例如,您有一个名为WebService的连接管理器:

// singleton classpublic class WebService {    private static WebService instance;    private WebService() {}    public static WebService getInstance() {        if (instance == null)            instance = new WebService();        return instance;    }// getInstance()    public voID login() {};    public voID getFeeds() {};    public voID logout() {};}

然后,您可以将其放在这样的基本活动中:

public class WebServiceActivity extends Activity {    private final WebService fWebService = WebService.getInstance();    protected WebService ws() { return fWebService; }}

然后,您有两个活动,LoginActivity和WorkingActivity:

public class LoginActivity extends WebServiceActivity {    buttonLogin.setonClickListener(new OnClickListener() {        @OverrIDe        public voID onClick(VIEw v) {            try {                ws().login();                // start WorkingActivity if logging in ok            } catch (...) { ... }        }    });}public class WorkingActivity extends WebServiceActivity {    buttonGetFeeds.setonClickListener(new OnClickListener() {        @OverrIDe        public voID onClick(VIEw v) {            ws().getFeeds();        }    });    buttonlogout.setonClickListener(new OnClickListener() {        @OverrIDe        public voID onClick(VIEw v) {            ws().logout();            finish();        }    });}

无论如何,有很多方法.以上是我的.希望它对您有帮助:-)

总结

以上是内存溢出为你收集整理的android-在活动之间传递类的实例全部内容,希望文章能够帮你解决android-在活动之间传递类的实例所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1071901.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存