我得到以下警告: 自定义视图com/示例/视图/适配器/someadapter缺少 工具使用的构造函数:(上下文)或(上下文,属性)或 (上下文,attributeset,int) 在我的班级someadapter中,它扩展了一些扩展ArrayAdapter 的baseadapter public class SomeAdapter extends BaseAdapter{} public abstract class BaseAdapter extends ArrayAdapter{} 警告存在于混凝土适配器中,但不存在于抽象的baseadapter中. 有人在这种情况下听说过这种警告吗? AFAIK Android checks classes for they are extending views by checking the name of the super classes via viewConstructordeTecto
以下是关于 android-arrayadapter 的编程技术问答
我如何将此阵列adapter设置为我的listView,以便在我的屏幕上填充列表视图? 例如: listview.setAdapter(MyAdapter); 这是我的MainAttivity和ListAdapter的代码: public class MainActivity extends Activity { CheckBoxInfo cbr; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); cbr = new CheckBoxInfo(); cbr.checkBoxName = "dfdjklfjdkljf"; cbr.checkBoxState = true; Li
我为ListView> ListView定义了一个自定义视图(XML),它添加了Button.我想为每个行创建一个OnClickListener,但没有创建自定义适配器.这是可能的,还是Android迫使我为我的ListView? 创建一个自定义ArrayAdapter 这是我正在做的事情的片段: glAdapter = new ArrayAdapter(getActivity(), R.layout.fragment_grouprow, R.id.groupRowText, ListOfGroups); ListView groupListView = (ListView)mainView.findViewById(R.id.listViewGroupMain); groupListView.setAdapter(glAdapter); groupListView.setOnItemClickListener(new AdapterView.OnItemClic
我正在使用片段来创建ListView填充CheckBox es.我尽力根据其他问题找到解决方案,但我似乎无法解决问题.当我在不使用以下内容的情况下运行脚本时 convertView.getTag(); 我的应用程序运行良好,但是列表中 item 的位置并不能保存.视图项目跳来跳去.但是,当我使用该方法时,我会遇到错误.日志猫说: 01-02 23:54:20.662: E/InputEventReceiver(1209): Exception dispatching input event. 01-02 23:54:20.672: D/AndroidRuntime(1209): Shutting down VM 01-02 23:54:20.672: W/dalvikvm(1209): threadid=1: thread exiting with uncaught exception (group=0x40a13300) 01-02 23:54:20.782: E/Andr
我有一个带有两个按钮的自定义listView,当我在任何一行上单击任何一个按钮时,我都想在listView上获取文本标签,而现在只需弹出烤面包即可.到目前为止,没有什么可以奏效的,我一直在数组中获得最后一件. 这是一个屏幕截图,可以让您更好地了解我的意思 这是我的自定义ListView的适配器子类 static final String[] Names = new String[] { "John", "Mike", "Maria", "Miguel"}; class MyArrayAdapter extends ArrayAdapter { private final Context context; int which; public MyArrayAdapter(Context context, String[] pValues) { super(context,
我有一个自定义阵列adapter来表示旋转器控件上的对象,我可以加载我的项目 列出并显示以进行选择,但是当实际选择发生时,旋转器一无所获. 活动代码: public MetroData metroData; private Spinner spinner; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); metroData = new MetroData(); spinner = (Spinner) findViewById(R.id.spinner1); StopArrayAdapter dAdapter = new StopArrayAdapter(this, metroData.Stops); spinner.se
是否可以在ListView中重新绘制一行?我有一个ListView的行,LinearLayout s.我会听取偏好更改,有时我只需要在单行的LinearLayout内更改一个View.有没有办法将其重新刷新,而无需调用listview.notifyDatasetChanged()? 我尝试在视图(LinearLayout内)上调用view.invalidate(),但并未重新绘制行. 解决方案 作为Romain Guy 在 google i/o session ,最有效的方法仅在列表视图中更新一个视图是以下内容(此一个更新整个View数据): ListView list = getListView(); int start = list.getFirstVisiblePosition(); for(int i=start, j=list.getLastVisiblePosition();i
我创建了一个采用器来显示视频的缩略图,表格特定文件夹 但是当我滚动时,它会落后一点,但是为什么? 以下是代码: 主要活动类 public class TestvideolistingActivity extends ListActivity { String filename = null; String filePath = null; String dirNameSlash = "/videotest/"; String dirName = "videotest"; String path = Environment.getExternalStorageDirectory() + dirNameSlash ; String[] values; String deleteFile ; @Override public void onCreate(Bundle savedInstanceStat
我有一个列表,该列表每2秒通过处理程序PostElayed()方法进行一次刷新. 每2秒钟运行一个使HTTP获取请求,将JSON变成对象列表,然后设置ListAdapter: MyListAdapter adapter = new MyListAdapter(someObjects); setListAdapter(adapter); 我的问题是,即使我滚动到列表的中间或底部,我的列表每次完成(大约每两秒钟)都会跳回顶部.这对最终用户来说将非常烦人,因此我需要像这样做的列表在后台更新,但是列表的当前视图在异步完成时不要跳回顶部. . 我可以包含更多需要的代码.我对Android开发有些陌生,所以我不确定什么对他人有帮助. 其他信息 从hacksteak25中获取建议,我可以到达尝试从适配器中删除所有数据的地步,然后一次添加一个对象.这不是最终解决方案,因为这可能仍然会导致屏幕跳跃,但是我试图将其用作概念证明我如何在某个时候合并数据. 我的问题
我正在使用自己的ArrayAdapter类.当我覆盖方法ArrayAdapter.areAllItemsEnabled()和ArrayAdapter.isEnabled()列表视图中某些单元格之间的分隔线消失.有人知道如何避免这种情况吗?我需要分隔线甚至用于残疾人单元. 解决方案 在areallitemsenabled()中返回true,而对于特定项目,则false.禁用项目将无法单击,但您仍然可以查看分隔线 注意:这对Android 5 不起作用 其他解决方案 您可以通过给出以下任何属性来禁用列表项目. android:focusable="true" android:clickable="true" 因此,以下列表项目布局将无法单击,但将显示分隔线,而无需实现areAllItemsEnabled()或isEnabled(int position). .
我目前有点无助. 我有以下代码 public class ListViewAdapter extends ArrayAdapter { private final Context context; private final int textViewResourceId; private final int[] itemResourceIds; private final ArrayList list; public ListViewAdapter(Context context, int textViewResourceId, int[] itemResourceIds, ArrayList list) { super(context, textViewResourceId, itemResourceIds, list); this.context = context;
我有一种方法,initializeViews,它在最后一行中遇到 ArrayAdapter constructor undefined错误. 该方法位于F1Fragment中,该方法扩展了MainFragment.然后将MainFragment连接到Activity. 我们不能在ArrayAdapter构造函数中给出Fragment的上下文吗?我是Android的新手.请纠正我.预先感谢. private void initializeViews(RelativeLayout contentLayout) { leaguesListView = ( ListView ) contentLayout.findViewById ( R.id.leaguesListView ); progressLinear = (LinearLayout) contentLayout.findViewById ( R.id.progressLeague
我创建了一个名为popuplistFragment.java和list_view.xml.i的ListView.我在XML文件中添加了textView,但我不知道在哪里添加代码以更改listView中的TextView. > import android.app.ListFragment; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapte
我的ListView ArrayAdapter使用XML布局(类似于Simple_list_item_1)来夸大其内容.我在应用程序菜单中有两个选项可以增加/减小文本大小.我通过覆盖ArrayAdapter的getView函数来修改ListView内部TextViews的文本大小.这样的东西: adapter = new ArrayAdapter(MyActivity.this, R.layout.line_list, lines){ @Override public View getView(int position, View convertView, ViewGroup parent) { TextView textView = (TextView) super.getView(position, convertView, parent); textView.setTextSize(TypedValue.COMPLE
我不久前就开始从事一个小型项目,主要目标是为我在100周内跟踪自己的行动. 我仍然是新秀Android开发人员,我遇到了一个我无法解释的问题. 基本上,我已经使用阵列ADAPTER填充了一个列表,其中包含100个字符串(Week1,Week2,Week3 ... Week100) 在每个文本视图上设置一个onclicklistener 但是;每当我单击单个文本视图时 - 不仅仅是一个文本视图. 注意: 我正在使用scrollview滚动整个列表. (一旦填充,100周列表填写了整个屏幕,滚动视图用于访问整个列表.) 我还保存了对当前绘制的文本视图的引用 主动脉初始化: public class MainActivity extends ActionBarActivity { TextView selectedWeek; // Reference to the selected week. @Override protected void
我是Android的新手,我必须在两个PCB之间建立蓝牙连接.我在API指南中看到了一系列代码,但我仍然不知道这意味着什么.我想知道是否有人可以帮助我. 这是该代码: Set pairedDevices = mBluetoothAdapter.getBondedDevices(); 我无法理解的是Set! 为什么他们在""之间放一些东西.我也看过ArrayAdapter.这些元素有什么? 解决方案 使Set a generic set.当您声明此信息时: Set pairedDevices 表示Set对象应仅包含类型BluetoothDevice的对象.通常建议使用通用集合,因为您会获得类型安全的直接利益. Java Collections框架旨在处理任何类型的对象.在 java 1.4 和更早之前,它们使用java.l
有一个要求没有那么琐碎的动态列表,每个记录由几列(文本,按钮)组成.它应该看起来像: Text11 Text12 Button1 Button2 Text21 Text22 Button1 Button2 ... 首先要实现这一目标,这似乎是TableLayout.我期望在res/layout/*.xml中指定的布局/样式数据,并用Java代码中的一些数据集填充它(如ListView,它可以在 *.xml中指定项目的TextView并使用ArrayAdapter将其绑定到某些数组.但是在玩了一段时间之后,我发现的一切可能是在编程中完全填充TableLayout.不过,创建TableRow TableRow,直接在Java代码中设置布局属性似乎不够优雅. 所以问题是:我在正确的道路上吗? TableLayout实现这一目标真的是最好的观点吗?扩展ListView或其他满足此类要求更合适的? 解决方案 使用ListView和ArrayAdapter,您可以执行更复杂的
我是编程的新手.我有一个具有多个视图的应用程序.主视图显示了早餐,午餐和晚餐等清单.选择一个项目时,示例午餐,显示午餐菜单项的列表,例如汉堡包,芝士汉堡,炸薯条...(此列表是由\ values \ valut \ valuts \ bunch.xml的弦乐阵列午餐_MENU创建的. )当用户选择所需的项目时,它存储在一个名为MyNewList的新数组中,并在用户按下午餐列表按钮时显示.所有项目均显示为用户选择的.到目前为止,一切都很好.我在SelectedItems.xml中创建了一个Android:OnClick =" ShareMylist",并且该按钮可行,但没有填充我的列表.我认为我需要的是如何将其转换为字符串,这是我需要帮助的地方. 这是我的问题....我有我的共享按钮,按下时,我希望它自动打开默认消息传递应用程序并从所选项目listView填充列表. package com.mycompany.lunch; import java.util.ArrayList