Java 如何将AppCompatActivity更改为片段
我是开发android应用程序的新手。我的选项卡使用片段,但我遵循使用AppCompatActivity的教程,不能将它们组合在一起。我想学习如何将AppCompatActivity更改为片段 下面是我的一些代码: UserInfo.java此部分应使用片段Java 如何将AppCompatActivity更改为片段,java,android,android-fragments,fragment,Java,Android,Android Fragments,Fragment,我是开发android应用程序的新手。我的选项卡使用片段,但我遵循使用AppCompatActivity的教程,不能将它们组合在一起。我想学习如何将AppCompatActivity更改为片段 下面是我的一些代码: UserInfo.java此部分应使用片段 public class UserInfo extends AppCompatActivity{ @Bind(R.id.passport_type) BetterSpinner spinner_passport;
public class UserInfo extends AppCompatActivity{
@Bind(R.id.passport_type)
BetterSpinner spinner_passport;
public UserInfo() {
// Required empty public constructor
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.user_info);
ButterKnife.bind(this);
String[] list = getResources().getStringArray(R.array.passport_type);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, list);
spinner_passport.setAdapter(adapter);
}
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.user_info, container, false);
}
}
new UserInfo()有错误。
错误消息是:
Wrong 1st argument type. Found: 'com.chinatown.wangjian.chinatown_userprofile.UserInfo', required: 'android.support.v4.app.Fragment' less...
addFragment
(android.support.v4.app.Fragment,
String)
in ViewPagerAdapter cannot be applied
to
(com.chinatown.wangjian.chinatown_userprofile.UserInfo,
String)
我真的很想学习如何改变片段任何教程或任何帮助将不胜感激。非常感谢!如果需要的话,我会上传更多的细节。你需要弄清楚Butterknife是如何在片段中工作的,但我认为你很接近了,你需要这个
class UserInfo extends Fragment
(并确保导入android.support.v4.app.Fragment
)
然后,最好将所有代码从onCreate移动到OnCreateView中,并像这样重新构造代码
View v = inflater.inflate(R.layout.user_info, container, false);
// TODO: v.findViewById(R.id.passport_type)
// TODO: Set the adapter
return v; // this replaces 'setContentView'
无论您在哪里遇到此
错误,请将其更改为getActivity()
,并且getActivity().getResources()
查找有关片段的任何教程。。。您的错误是无法将AppCompative加载到ViewPager中。暂时忘掉转换,了解如何制作和显示一个简单片段
View v = inflater.inflate(R.layout.user_info, container, false);
// TODO: v.findViewById(R.id.passport_type)
// TODO: Set the adapter
return v; // this replaces 'setContentView'