Articles of listview

如何为自定义listView项的单独部分设置onClickListener? 产品

我为我的Android应用程序制作了一个自定义listView,我在为项目的不同部分创建单独的onClickListeners时遇到问题。 我的项目有图片和文字。 我想要的是根据点击的那些开始不同的活动。 onClick()方法应该启动一个活动,这使我无法在我的DataBinder类的getView()方法中定义。 (DataBinder使用自定义布局填充我的listView) 有帮助吗? 谢谢!

使用SimpleCursorAdapter进行Android ListView更新

嘿,我使用listview来显示存储在数据库中的条目。 我还有一个EditText元素和一个按钮,它将EditText的内容添加到数据库中。 要将视图绑定到数据库内容,我使用SimpleCursorAdapter和以下populate函数: private void populate() { cursor = dbAdapter.getAllItems(); startManagingCursor(cursor); String[] from = new String[] { DBAdapter.KEY_TASK }; int[] to = new int[] { android.R.id.text1 }; // Now create an array adapter and set it to display using our row cursorAdapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, cursor, from, to); list.setAdapter(cursorAdapter); } 如果我添加了一个新条目,通过单击我要刷新列表视图的按钮,但这只适用于populate函数而不适用于通用适配器函数notifyDataSetChanged(); 。 我有错误或者这是刷新列表视图的正确方法吗?

破坏视图(布局)

我现在正在与内存泄漏作斗争。 所以我很好奇是否有任何方法可以手动销毁视图(在活动onDestroy方法中)? 由于父子引用,上下文引用,标记等,整个布局(activity contentView)有点复杂。 GC现在无法收集我的布局。 问题是隐藏在视图结构中……所以find它的唯一方法是尝试破坏叶子视图,因此在某些时候GC会收集根视图并让我知道问题所在的位置。 我的布局结构:ViewFlipper(RelativeLayout,ListView(ViewFlipper(RelativeLayout,RelativeLayout)))

片段中未调用onContextItemSelected

我正在尝试使用ListView中的长按popup菜单。 我可以调用popup菜单,但是当我单击此popup菜单的选项时, onContextItemSelected()不起作用。 这是我的代码: package com.pa.homeautomationblank.fragments; import android.app.Fragment; import android.os.Bundle; import android.view.ContextMenu; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; import android.widget.RelativeLayout; import android.widget.Toast; import com.pa.homeautomationblank.R; import com.pa.homeautomationblank.listeners.OnItemCentraisLongClickListener; import com.pa.homeautomationblank.listeners.OnReconhecerCentraisClickListener; import com.pa.homeautomationblank.model.Central; import com.pa.homeautomationblank.model.dao.CentralDAO; public class CentraisFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, […]

ListView setText在特定位置

我定义了以下代码,以便能够在特定位置设置文本。 if(position == 0) { holder.text.setText(“blah”); } 我想要的是检查位置是否等于0,然后如果是,则在位置p上设置文本 – 每次它是p =位置+ 1(下一个位置)。 我们是否能够将文本从持有者设置为文本视图,但是在某个位置。 谢谢。

错误:无法解析notifyDataSetChanged(); Android的

我在更新ListView时遇到了一些麻烦。 所以我使用了notifyDataSetChanged(); 但它说它无法解决。 下面是代码中无法正常工作的部分: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main_activity2); background2= (RelativeLayout) findViewById(R.id.background); final ListView theListView = (ListView) findViewById(R.id.listView); Intent calledActivity=getIntent(); final List pe=calledActivity.getExtras().getStringArrayList(“Caller1”); String []s =new String[pe.size()]; for(int i=0;i<pe.size();i++) { s[i]=(String)pe.get(i); } final ListAdapter theAdapter= new ArrayAdapter(this, android.R.layout.simple_list_item_1, pe); theListView.setAdapter(theAdapter); final int cnt=1; theListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, […]

将onItemClick设置为自定义适配器ListView

当我在过滤时尝试将listView项目的位置修改为所需的意图时遇到问题,并获得信息我可以使用自定义适配器覆盖问题,我已经完成了但我不知道如何为每个项目分配点击,请检查以下代码: public class IndexPageActivity extends Activity { ListView listView; EditText editTextB; @Override protected void onCreate(Bundle savfedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.indexpage); listView = (ListView) findViewById(R.id.pageList); editTextB = (EditText) findViewById(R.id.searchB); listView.setAdapter(new PagesAdapter(this)); listView.setOnItemClickListener((OnItemClickListener) this); } } class SingleRow { String pagedata; SingleRow(String pagedata){ this.pagedata=pagedata; } } class PagesAdapter extends BaseAdapter implements OnItemClickListener{ ArrayList […]

当我使用自定义适配器向上和向下滚动listview时,getView()开始表现得很奇怪。 为什么?

我有一个listview与自定义arrayadapter处理大约15个字符串。 每行的样式交替显示(标签和这些标签的值之间 – 例如,第1行可以是“电子邮件地址”,第2行是实际的电子邮件地址)。 我在arrayadapter的getView()方法中将每行的样式更改为替换。 因此,如果当前位置的项目是标签,我将从默认的行样式(这是值应用于它们的样式)更改样式。 当列表视图首次加载时,样式是完美的,正如我想要的那样。 如果我慢慢向上或向下滚动列表,它会保持这种状态。 但是,如果我快速上下滚动列表,值行的样式将开始更改为标签行的样式,直到所有行都具有标签行的样式。 有谁知道为什么会发生这种情况? 我在应用程序中的其他列表视图上使用了自定义适配器,没有这样的问题。 编辑:发现它还将所有行更改为纵向 – >横向更改的标签样式。 不在横向 – >纵向更改上执行此操作。 下面是我正在使用的适配器。 我错过了什么吗? public class DetailsAdapter extends ArrayAdapter { private TextView text = null; private String item = null; public DetailsAdapter(Context context, int resource, int textViewResourceId, String[] objects) { super(context, resource, textViewResourceId, objects); } @Override public View getView(int position, […]

Android自定义ListView重复选择背景

我有一个自定义适配器: public class PhraseCustomAdapter extends BaseAdapter { public String original[]; public String translation[]; public String transcription[]; public Activity context; public LayoutInflater inflater; public PhraseCustomAdapter(Activity context,String[] original, String[] translation, String[] transcription) { super(); this.context = context; this.original = original; this.translation = translation; this.transcription = transcription; inflater = LayoutInflater.from(context); this.inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); } @Override public int getCount() […]

Android(列表)视图过度滚动,如Sense UI

我在谷歌和stackoverflow上搜索了一段时间,但我找不到解决方案。 是否有任何可能性来获得Android 2.2或2.1上的listview过度滚动,就像感觉ui那样?! 在我的报警视图中就像这里: AlarmView Sense UI