Android Studio错误:此类应提供默认构造函数
当我在Android Studio 1.0中尝试生成签名APK向导时,出现了一个错误Android Studio错误:此类应提供默认构造函数,android,android-fragments,Android,Android Fragments,当我在Android Studio 1.0中尝试生成签名APK向导时,出现了一个错误 Error: This class should provide a default constructor (a public constructor with no arguments) (com.ex.Tab1_2_1) [Instantiatable] 这是我的密码 它在Eclipse中工作,我想知道为什么它在Android Studio中不工作 public class Tab1_2_1 exten
Error: This class should provide a default constructor (a public constructor with no arguments) (com.ex.Tab1_2_1) [Instantiatable]
这是我的密码
它在Eclipse中工作,我想知道为什么它在Android Studio中不工作
public class Tab1_2_1 extends Fragment{
Context mContext;
WebView mWebView;
View mView;
public Tab1_2_1(Context context)
{
mContext = context;
}
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setRetainInstance(true);
}
@Override
public View onCreateView(LayoutInflater inflater,
ViewGroup container, Bundle savedInstanceState)
{
mView = inflater.inflate(R.layout.webview, null);
return mView;
}
@Override
public void onActivityCreated(Bundle savedInstanceState)
{
super.onActivityCreated(savedInstanceState);
mWebView = (WebView)mView.findViewById(R.id.webview);
mWebView.loadUrl("file:///android_asset/tab1_2/tab1_2_1.html");
mWebView.getSettings().setJavaScriptEnabled(true);
}
}
祝您愉快。是的,
Fragment
s子类需要有一个空构造函数。你应该删除
public Tab1_2_1(Context context)
{
mContext = context;
}
另外,让一个构造函数仅仅提供一个上下文对象一点用处都没有,因为Fragment
具有getActivity
方法,该方法从官方文档返回托管Fragment的活动
Fragment的所有子类都必须包含一个公共的无参数构造函数。框架通常会在需要时重新实例化片段类,特别是在状态恢复期间,并且需要能够找到此构造函数来实例化它。如果无参数构造函数不可用,则在某些情况下,在状态还原期间会发生运行时异常
您不需要将上下文传递给它。您可以通过使用方法随时获取上下文谢谢您的回答!谢谢你的回答!解决方案对我有用