我使用"content"字符串从网站获取数据,也在facebook集成中共享当前页面的数据(内容)在墙上,我试图在声明前添加final,但这会在bundle中抛出以下错误…无法分配最终的局部变量连接。它必须为空,并且不使用复合赋值。我怎样才能纠正这个问题?
private String headerContent;
public String html,content;
private Facebook mFacebook;
private AsyncFacebookRunner mAsyncRunner;
private Bundle bundle;
public String description,title;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.single_list_item);
facebook.setOnClickListener(new View.OnClickListener() {
//@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Bundle params = new Bundle();
mFacebook.dialog(Singlemenuitem.this, "feed",params,
(DialogListener) new SampleDialogListener());
}
});
if (bundle != null)
{
headerContent = bundle.getString("Header_Content");
content=bundle.getString("content");
url = bundle.getString("url");
webView.loadUrl(url);
}
}
不能设置变量为final
。final
变量必须用初始化表达式或在构造函数中初始化。您在onCreate
中分配它,这在对象的生命周期中太晚了。
将变量改为private
,而不是public
,并提供一个访问器方法。
private String content;
public String getContent() {
return content;
}