Articles of layout inflater

布局没有在android自定义组件中膨胀

我在自定义视图(从LinearLayout派生)中得到一个空指针exception,因为它找不到它的子视图。 这是代码: public class MyView extends LinearLayout { public MyView(Context context, AttributeSet attrs) { this(context, attrs, 0); } public MyView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } private TextView mText; @Override protected void onFinishInflate() { super.onFinishInflate(); mText = (TextView) findViewById(R.id.text); if (isInEditMode()) { mText.setText(“Some example text.”); } } } 这是布局( my_view.xml ): […]

Android布局inflater内存不足

我有时只会在一台设备上收到此错误: 04-09 16:05:22.016: E/AndroidRuntime(31843): FATAL EXCEPTION: main 04-09 16:05:22.016: E/AndroidRuntime(31843): android.view.InflateException: Binary XML file line #11: Error inflating class 04-09 16:05:22.016: E/AndroidRuntime(31843): at android.view.LayoutInflater.createView(LayoutInflater.java:613) 04-09 16:05:22.016: E/AndroidRuntime(31843): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56) 04-09 16:05:22.016: E/AndroidRuntime(31843): at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660) 04-09 16:05:22.016: E/AndroidRuntime(31843): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685) 04-09 16:05:22.016: E/AndroidRuntime(31843): at android.view.LayoutInflater.rInflate(LayoutInflater.java :746) 04-09 16:05:22.016: E/AndroidRuntime(31843): at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 04-09 16:05:22.016: E/AndroidRuntime(31843): at android.view.LayoutInflater.inflate(LayoutInflater.java:396) […]

Inflater.inflate()方法调用的InflateException

尝试在我的MenuAdapter类中膨胀视图时,我MenuAdapter 。 我已经在try-catch块中包含了麻烦的代码并得到错误消息: 链接到整个项目: https://docs.google.com/file/d/0B2Iwl4UysxOMa3E5a1l2SHZwOG8/edit?usp=sharing 二进制XML文件行#1:错误类膨胀 这是代码: package com.example.sidemenututorial; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; public class MenuListAdapter extends BaseAdapter { // Fields —————————————————————– private Context context; private String[] titles; private String[] subtitles; private int[] icons; private LayoutInflater inflater; // Constructor ———————————————————— public MenuListAdapter( Context context, String[] […]

Android LayoutInflater问题

这是我的类DownloadableProjectsFromWebAdapter的getView方法: @Override public View getView(int position, View convertView, ViewGroup parent) { View row = convertView; DownloadableProjectsFromWebHolder holder = null; if(row == null) { LayoutInflater inflater = ((Activity)context).getLayoutInflater(); row = inflater.inflate(layoutResourceId, parent, false); holder = new DownloadableProjectsFromWebHolder(); holder.txtPid = (TextView)row.findViewById(R.id.tvAllProjectsPid); holder.txtName = (TextView)row.findViewById(R.id.tvAllProjectsName); holder.txtShareable = (TextView)row.findViewById(R.id.tvAllProjectsShareable); row.setTag(holder); } else { holder = (DownloadableProjectsFromWebHolder)row.getTag(); } String share_text; […]

android.view.InflateException:二进制XML文件行#7:错误类膨胀

尝试运行我的项目时收到错误消息。 我想为Android创建Tic Tac Toe,我使用下面的自定义View来创建Tic Tac Toe板: package org.me.TicTacToe.ui; import android.content.Context; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Paint.Style; import android.view.MotionEvent; import android.view.View; public class TicTacToeBoard extends View { private Tile[][] tile = null; //Abstract class to create tiles in Tic Tac Toe Board int boardWidth = 3; //It mean Tic Tac Toe board is consists of 3×3 […]

使用自定义视图填充ListFragments?

以前,我将布局膨胀为ListView的自定义视图层次结构没有问题。 但我不知道如何为listFragment做同样的事情。 假设我有一个带有ImageView和2个textview的item_list布局。 我想膨胀这个在我的ListFragment中使用。 但是怎么样? public class Tab1Fragment extends ListFragment { private LayoutInflater mInflater; private Vector data; RowData rd; static final String[] title = new String[] { “Classic Plank”, “Side Plank”, “Reversed Plank”, “Swissball Plank”, “One Arm One Leg”, //5 }; static final String[] description = new String[] { “Variation of Sushis from fresh vegetables […]

为每个视图增加新的布局xml – 在PagerAdapter中实例化instantiateItem

所以基本上我想在ViewPager中填充页面,为每个视图位置使用单独的XML布局。 我现在正在这样做 @Override public Object instantiateItem(View container, int position) { LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(mContext.LAYOUT_INFLATER_SERVICE); if(position == 0){ view = inflater.inflate(R.layout.main, null); ((ViewPager) container).addView(view, 0); } if(position == 1){ view = inflater.inflate(R.layout.main_second, null); ((ViewPager) container).addView(view, 0); } if(position == 2){ view = inflater.inflate(R.layout.main_third, null); ((ViewPager) container).addView(view, 0); } return view; } 首先正确显示视图,但是当我滑动ViewPager时,将隐藏/销毁布局。 为什么是这样? 我这样做是错误的吗? 请帮助并纠正我。 […]

谷歌地图V2 android错误膨胀类碎片错误

我正在创建一个带有选项卡的应用程序,我在其中一个选项卡中有地图,当我从它打开地图时工作正常,当我访问其他选项卡时,它也工作正常,但当我回到地图选项卡应用程序崩溃有这个错误。 04-09 14:10:43.866: E/AndroidRuntime(28184): android.view.InflateException: Binary XML file line #42: Error inflating class fragment 04-09 14:10:43.866: E/AndroidRuntime(28184): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:697) 04-09 14:10:43.866: E/AndroidRuntime(28184): at android.view.LayoutInflater.rInflate(LayoutInflater.java:739) 04-09 14:10:43.866: E/AndroidRuntime(28184): at android.view.LayoutInflater.rInflate(LayoutInflater.java:742) 04-09 14:10:43.866: E/AndroidRuntime(28184): at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 04-09 14:10:43.866: E/AndroidRuntime(28184): at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 04-09 14:10:43.866: E/AndroidRuntime(28184): at com.research.fragmenttabstudy.tabA.TodaysDealLocation.onCreateView(TodaysDealLocation.java:43) 这是我的代码: public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { Log.d(“err”,”todaysdeal […]

片段和onConfigurationChanged

我正在尝试用活动做一些事情,但是在一个片段中。 我所做的是使用活动: 旋转设备时首先停止活动重启android:configChanges=”keyboardHidden|orientation|screenSize” 在我的活动中添加: @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); setContentView(R.layout.main); } 因此,获取活动不会重新启动,而是重新加载main.xml,以使用layout-land 现在我有一个显示viewpager的活动,其中包含三个片段。 一切正常。 旋转的检测在碎片中 public class FRG_map_web extends Fragment { @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); Log.i(“myLogs”, “Rotation”); } 问题是该片段不使用setContentView(R.layout.main); 这是代码: @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { view = inflater.inflate(R.layout.frg.myFragment, null); 我试过用: LayoutInflater inflater = inflater = […]

如何在android中的gridview适配器的getView()内膨胀另一个布局?

我想创建每周日历视图,并且在每个网格项目内(每天)可能有几个活动。但是我已经使用网格视图创建了每周日历视图但是我想通过动态创建特定日期的活动检查db。 和图像一样。 下面是我的getView()代码.. @Override public View getView(int position, View convertView, ViewGroup parent) { View row = convertView; if (convertView == null) { LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); row = inflater.inflate(R.layout.calendar_week_gridcell, parent, false); } txtRowTitle = (TextView) row.findViewById(R.id.txtDayTitle); LinearLayout root = (LinearLayout) row.findViewById(R.id.linear_root); String dayTitle = list.get(position); txtRowTitle.setText(dayTitle); if (position == currentWeekDay – 1) root.setBackgroundResource(R.drawable.calheader); if […]