如何在Android活动中获得列表器实现
问题描述:
我在Android上通过一个接口创建了一个活动(AuthenticationActivity)。另一个类实现这个接口。我需要为AuthenticationActivity解析一个接口对象,所以当一个事件发生时,另一个类执行一个动作。如何在Android活动中获得列表器实现
public class MyWebViewActivity extends Activity {
private WebView mWebView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_webview);
mWebView = (WebView) findViewById(R.id.webview);
mWebView.setWebViewClient(new OAuthWebViewClient());
mWebView.setVerticalScrollBarEnabled(false);
mWebView.setHorizontalScrollBarEnabled(false);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("https://www....");
}
private class OAuthWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.startsWith(App.callbackUrl)) {
String urls[] = url.split("=");
// listener.onComplete(urls[1]); // HERE I NEED FOR LISTNER
return true;
}
return false;
}
}
public interface OAuthDialogListener {
public abstract void onComplete(String accessToken);
public abstract void onError(String error);
}
}
我在其他类:
OAuthDialogListener listener = new OAuthDialogListener() {
@Override
public void onComplete(String code) {
getAccessToken(code);
}
@Override
public void onError(String error) {
mListener.onFail("Authorization failed");
}
};
安本级呼叫:
Intent intent = new Intent(this, MyWebViewActivity.class);
startActivity(intent);
如何MyWebViewActivity
CLAS使用listener
?
答
OAuthWebViewClient类中初始化OAuthDialogListener,并将它们与MyWebViewActivity实现它
尝试
public class MyWebViewActivity extends Activity implements OAuthWebViewClient {
你能后,你有代码示例? –
@IshanFernando制作完成。 –
您是否在android中尝试过startActivityForResult?https://developer.android.com/training/basics/intents/result.html –