我正在制作一个教程,我正在创建一个Android抽屉。
Java - 文件:
- 主要活动
- NavigationDrawerFragment
- AboutMeFragment
- ContactInfoFragment
- MyCompanyFragment
XML-文件:
-activity_main
-fragment_about_me
-fragment_contact_info
-fragment_my_company
fragment_navigation_drawer
- fragment_main
三个文件“AboutMeFragment,ContactInfoFragment,MyCompanyFragment包含alomost相同的代码。
package blabla.app1;
import android.content.Context;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class AboutMeFragment extends Fragment {
public static AboutMeFragment newInstance(){
AboutMeFragment fragment = new AboutMeFragment();
return fragment;
}
public AboutMeFragment(){}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflator.inflate(R.layout.fragment_about_me, container, false);
return rootView;
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
((MainActivity) activity).onSectionAttached(1);
}
}
总之,我得到以下错误消息: 1.“inflater”:无法解析符号充气机 2.“活动”:无法解析符号活动
由于
答案 0 :(得分:0)
第一个错误是一个简单的修复,它只是一个拼写错误。您的方法会显示onCreateView(LayoutInflater inflater...
但是当您在拼写它的方法inflator
中使用它时,该方法不存在,只需将其更改为inflater
。
第二个有点复杂,你的教程可能会使用
public void onAttach(Activity activity)
但现已弃用,并替换为
public void onAttach(Context context)
这就是activity
无法解决的原因,您没有任何称为“活动”的内容。修复此问题的最快方法仍然主要是跟随您的教程,可能是将上下文转换为这样的活动:
@Override
public void onAttach(Context context) {
super.onAttach(context);
if(context instanceof Activity) {
MainActivity activity = (MainActivity) context;
activity.onSectionAttached(1);
}
}