簡體   English   中英

將活動中的數據發送到Android中的類

[英]Send Data from an Activity to a class in Android

我有這個問題:我有一個Activity和兩個類MyGLSurfaceView,MyGLRenderer

在Activity中,有一個線程會生成不同的數字,我必須將此變量發送給MyGLRenderer。

我不能通過構造函數的參數傳遞此變量:/這是將變量從活動發送到類的另一種模式嗎? 我能怎么做 ?

您可以更改構造函數以匹配您發送的參數

例如:如果您想傳遞字符串

MyGLRenderer(String s)
{
// store it to local variable and use it
}

要么

您可以在MyGLRenderer類中聲明一個公共變量,然后從您的Actvity

也許這不是一個很明確的解決方案,但是您可以考慮使用EventBus https://github.com/greenrobot/EventBus來解決某些受Android限制的情況。

在您的類構造函數中注冊EventBus

EventBus.getDefault.register(this);

並在您的活動onCreate()onDestroy()方法中register() / unRegister() register()

當您只需要通過activity發布價值時

EventBus.getDefault().post(new WhateverObject());

並獲得其他班級的價值

public void onEvent(WhateverObject object){
//doing stuff
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM