我正在尝试将facebook-connect集成到我的Android应用程序中。我通过互联网看到的所有示例都是从Android活动创建连接。我正在做一些不同的事情,用户可以从自定义首选项配置其与Facebook的连接。我在twitter和foursquare上做得很成功。但是,Facebook.authorize方法需要一个Activity作为参数,因为我在偏好中,我无法找到任何对活动对象的引用。
所以我的问题是,如何获得偏好内活动的参考?
谢谢大家 Ť
答案 0 :(得分:6)
我能够通过将Context对象转换为Activity来获取Activity引用。
Activity activity = (Activity) context;
或使用自定义活动,您也可以执行此操作
SettingsActivity activity = (SettingsActivity) context;
答案 1 :(得分:4)
这是一个老问题,尽管我使用com.android.support:preference
首选项片段的以下函数:
public static Activity getPrefActivity(Preference pref)
{
Context c = pref.getContext();
if (c instanceof ContextThemeWrapper)
{
if (((ContextThemeWrapper) c).getBaseContext() instanceof Activity)
return (Activity) ((ContextThemeWrapper) c).getBaseContext();
}
else if (c instanceof Activity)
return (Activity) c;
return null;
}
答案 2 :(得分:0)
假设您有一项名为MyActivity
的活动,您可以使用MyActivity.class
吗?