Android 在我的项目中,我正在使用带有TabLayout的Fragments和ViewPager,它没有在设备上运行
我与许多其他应用程序相比。但我无法找出我错了什么 这就是我所做的 [我更改了gradle版本28.0.0-beta01>27.1.1,检查了所有xml文件,清理并重建了项目,我看到了许多关于带有表格布局的Viewpager的视频。] 主活动(表格布局+视图寻呼机), ganglist(列表视图,id/列表), 列表项(1个图像视图,2个文本视图) 我正在使用相同的片段进行测试Android 在我的项目中,我正在使用带有TabLayout的Fragments和ViewPager,它没有在设备上运行,android,android-tablayout,Android,Android Tablayout,我与许多其他应用程序相比。但我无法找出我错了什么 这就是我所做的 [我更改了gradle版本28.0.0-beta01>27.1.1,检查了所有xml文件,清理并重建了项目,我看到了许多关于带有表格布局的Viewpager的视频。] 主活动(表格布局+视图寻呼机), ganglist(列表视图,id/列表), 列表项(1个图像视图,2个文本视图) 我正在使用相同的片段进行测试 public class Gang { private int ImageResourceId; private Str
public class Gang {
private int ImageResourceId;
private String Feature;
private String Explanation;
public Gang(int ImageResourceId, String Feature, String Explanation){
this.ImageResourceId = ImageResourceId;
this.Feature = Feature;
this.Explanation = Explanation;
}
public int getImageResourceId(){return ImageResourceId;}
public void setImageResourceId(int ImageResourceId){
this.ImageResourceId= ImageResourceId;
}
public String getFeature(){return Feature;}
public void setFeature(String Feature){
this.Feature = Feature;
}
public String getExplanation(){return Explanation;}
public void setExplanation(String Explanation){
this.Explanation = Explanation;
}
}
public class GangAdapter extends ArrayAdapter<Gang> {
public GangAdapter(Context context, ArrayList<Gang>gangs){
super(context, 0, gangs);
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
View listItemView = convertView;
if(listItemView==null){
listItemView= LayoutInflater.from(getContext()).inflate(R.layout.list_item, parent, false);
}
Gang currentFeature = getItem(position);
ImageView spotImageView = listItemView.findViewById(R.id.Image);
spotImageView.setImageResource(currentFeature.getImageResourceId());
TextView featureTextView = listItemView.findViewById(R.id.where);
featureTextView.setText(currentFeature.getFeature());
TextView detailTextView = listItemView.findViewById(R.id.about);
detailTextView.setText(currentFeature.getExplanation());
return listItemView;
}
}
public class YeoidoFragment extends Fragment {
public YeoidoFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView= inflater.inflate(R.layout.ganglist, container, false);
final ArrayList<Gang> gangs = new ArrayList<>();
gangs.add(new Gang(R.drawable.yeouido1, getString(R.string.yeouido),getString(R.string.app_name)));
GangAdapter adapter = new GangAdapter(getActivity(), gangs);
ListView listView= rootView.findViewById(R.id.list);
listView.setAdapter(adapter);
return rootView;
}
}
公共类帮派{
私有int-ImageResourceId;
私有字符串特征;
私有字符串解释;
公共组(int-ImageResourceId、字符串特征、字符串解释){
this.ImageResourceId=ImageResourceId;
这个特征=特征;
解释=解释;
}
public int getImageResourceId(){return ImageResourceId;}
public void setImageResourceId(int-ImageResourceId){
this.ImageResourceId=ImageResourceId;
}
公共字符串getFeature(){return Feature;}
公共无效设置功能(字符串功能){
这个特征=特征;
}
公共字符串getExpression(){返回解释;}
公共解释(字符串解释){
解释=解释;
}
}
公共类GangAdapter扩展了ArrayAdapter{
公共GangAdapter(上下文上下文,ArrayListgangs){
超级(上下文,0,组);
}
@非空
@凌驾
公共视图getView(int位置,@Nullable视图convertView,@NonNull视图组父级){
View listItemView=convertView;
如果(listItemView==null){
listItemView=LayoutInflater.from(getContext()).flate(R.layout.list_项,父项,false);
}
组currentFeature=getItem(位置);
ImageView spotImageView=listItemView.findViewById(R.id.Image);
setImageResource(currentFeature.getImageResourceId());
TextView功能TextView=listItemView.findViewById(R.id.where);
featureTextView.setText(currentFeature.getFeature());
TextView detailTextView=listItemView.findViewById(R.id.about);
detailTextView.setText(currentFeature.getexplainion());
返回listItemView;
}
}
公共类YeroidOfRagment扩展了片段{
公众集会{
//必需的空公共构造函数
}
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
视图根视图=充气机。充气(R.layout.ganglist,container,false);
最终ArrayList=新ArrayList();
添加(新组(R.drawable.yeouido1、getString(R.string.yeouido)、getString(R.string.app_name));
GangAdapter=新的GangAdapter(getActivity(),gangs);
ListView ListView=rootView.findViewById(R.id.list);
setAdapter(适配器);
返回rootView;
}
}
来自logcat
08-06 21:32:41.805 8882-8882/com.example.android.hangangabout
E/合子:ISWhiteList过程-过程被列入白名单08-06
21:32:41.806 8882-8882/com.example.android.hangangangabout W/SELinux:
SELinux SELinux_android_计算_策略_索引:策略索引[2],
Con:u:r:zyote:s0 RAM:SEPF_SM-G950N_8.0.0_0005,[-1-1-1-1]
08-06 21:32:41.807 8882-8882/com.example.android.hangangabout
I/SELinux:SELinux:seapp\u context\u lookup:seinfo=不受信任,
level=s0:c512,c768,pkgname=com.example.android.hangang关于08-06
21:32:41.810 8882-8882/com.example.android.hangangabout I/zygote64:
延迟启用-Xcheck:jni 08-06 21:32:41.878
8882-8882/com.example.android.hangangabout D/ActivityThread:已添加
TimaKeyStore提供者08-06 21:32:42.026
8882-8924/com.example.android.hangangabout I/vndk支持:sphal
未为此进程配置命名空间。加载
/vendor/lib64/egl/libGLES_-mali.so改为从当前名称空间。
08-06 21:32:42.036 8882-8882/com.example.android.hangangabout
I/InstantRun:启动即时运行服务器:是主进程08-06
21:32:42.045 8882-8924/com.example.android.hangangangabout D/libEGL:
loaded/vendor/lib64/egl/libGLES_mali.so 08-06 21:32:42.990
8882-9058/com.example.android.hangangabout D/OpenGLRenderer:HWUI-GL
管道08-06 21:32:43.001 8882-8882/com.example.android.hangangabout
D/ViewRootImpl@c5bf86a[主活动]:设置视图=
DecorView@4d5415b[main activity]TM=true MM=false 08-06 21:32:43.011
8882-8882/com.example.android.hangangabout
D/ViewRootImpl@c5bf86a[主要活动]:发文附件日期08-06
21:32:43.067 8882-8882/com.example.android.hangang关于V/Surface:
sf_framedrop调试:0x4f4c,游戏:false,日志记录:0 08-06
21:32:43.068 8882-8882/com.example.android.hangangabout
D/ViewRootImpl@c5bf86a[MainActivity]:返回的重新播放:
旧=[0,0][0,0]新=[0,0][14402960]结果=0x7曲面={valid=true
5399044005504}更改=true 08-06 21:32:43.091
8882-9058/com.example.android.hangangabout I/OpenGLRenderer:
初始化EGL,版本1.4 08-06 21:32:43.091
8882-9058/com.example.android.hangangabout D/OpenGLRenderer:Swap
行为2 08-06 21:32:43.100
8882-9058/com.example.android.hangangabout D/libGLESv1:STS_GLApi:
包不允许使用DTS、ODTC:
com.example.android.hangang大约08-06 21:32:43.101
8882-9058/com.example.android.hangangabout D/mali_winsys:EGLint
新窗口曲面(egl\U winsys\U显示*,无效*,egl曲面,
EGLConfig,egl_winsys_surface**,egl_color_buffer_format*,
EGLBoolean)返回0x3000,[1440x2960]-格式:1 08-06 21:32:43.101
8882-9058/com.example.android.Hangang关于D/OpenGLRenderer:
EGLCreateWindowsSurface=0x7dbb41daf0 08-06 21:32:43.458
8882-8882/com.example.android.hangangabout D/AbsListView:在线布局
更改08-06 21:32:43.497 8882-8882/com.example.android.hangangabout
D/AndroidRuntime:正在关闭VM 08-06 21:32:43.516
8882-8882/com.example.android.Hangang关于E/AndroidRuntime:致命
例外情况:主要
进程:com.example.android.hangangabout,PID:8882
java.lang.RuntimeException:画布:尝试绘制太大(132710400字节)的位图。
在android.view.DisplayListCanvas.throw
public class Gang {
private int ImageResourceId;
private String Feature;
private String Explanation;
public Gang(int ImageResourceId, String Feature, String Explanation){
this.ImageResourceId = ImageResourceId;
this.Feature = Feature;
this.Explanation = Explanation;
}
public int getImageResourceId(){return ImageResourceId;}
public void setImageResourceId(int ImageResourceId){
this.ImageResourceId= ImageResourceId;
}
public String getFeature(){return Feature;}
public void setFeature(String Feature){
this.Feature = Feature;
}
public String getExplanation(){return Explanation;}
public void setExplanation(String Explanation){
this.Explanation = Explanation;
}
}
public class GangAdapter extends ArrayAdapter<Gang> {
public GangAdapter(Context context, ArrayList<Gang>gangs){
super(context, 0, gangs);
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
View listItemView = convertView;
if(listItemView==null){
listItemView= LayoutInflater.from(getContext()).inflate(R.layout.list_item, parent, false);
}
Gang currentFeature = getItem(position);
ImageView spotImageView = listItemView.findViewById(R.id.Image);
spotImageView.setImageResource(currentFeature.getImageResourceId());
TextView featureTextView = listItemView.findViewById(R.id.where);
featureTextView.setText(currentFeature.getFeature());
TextView detailTextView = listItemView.findViewById(R.id.about);
detailTextView.setText(currentFeature.getExplanation());
return listItemView;
}
}
public class YeoidoFragment extends Fragment {
public YeoidoFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView= inflater.inflate(R.layout.ganglist, container, false);
final ArrayList<Gang> gangs = new ArrayList<>();
gangs.add(new Gang(R.drawable.yeouido1, getString(R.string.yeouido),getString(R.string.app_name)));
GangAdapter adapter = new GangAdapter(getActivity(), gangs);
ListView listView= rootView.findViewById(R.id.list);
listView.setAdapter(adapter);
return rootView;
}
}
FATAL EXCEPTION: main Process: com.example.android.hangangabout, PID: 8882 java.lang.RuntimeException: Canvas: trying to draw too large(132710400bytes) bitmap.