Articles of listview

ListView类的备用背景颜色,即使没有数据也是如此

我想为自定义ListView类设置交替颜色。 代码如下: import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Rect; import android.util.AttributeSet; import android.view.View; import android.widget.ListView; public class CustomListView extends ListView { private Paint mPaint = new Paint(); private Paint mPaintBackground = new Paint(); public CustomListView(Context context, AttributeSet attrs) { super(context, attrs); mPaint.setColor(Color.parseColor(“#1A000000”)); } @Override protected void dispatchDraw(Canvas canvas) { super.dispatchDraw(canvas); final int […]

ListView的id属性为’android.R.id.list’我正确设置ListView ID时出错

我有一个带有自定义适配器的Listview。 我得到了标准 Your content must have a ListView whose id attribute is ‘android.R.id.list’ 但是,我的ListView有一个android:id=”@android:id/list”值集。 这真的是我的头脑。任何建议? main.xml中 styles.xml @drawable/background fitXY fill_parent fill_parent vertical fill_parent wrap_content #00000000 我的onCreate方法: /** Called when the activity is first created. */ @Override public void onCreate( Bundle savedInstanceState ) { super.onCreate( savedInstanceState ); setContentView( R.layout.main ); m_menu = new ArrayList(); populateMenu(); this.m_adapter […]

如何将OnClickListener添加到ListView适配器内的按钮?

我有一个列表视图,其中包含我所有用户的列表。 列表中的每个项目都是一个布局,其中包含一个按钮,用于显示AlertDialog以更改按钮标签的值。 如何动态地将单击事件添加到listview适配器生成的按钮? 这是我的适配器: public class PerfilAdapter extends BaseAdapter { Context mContext; LayoutInflater mLayoutInflater; List listaPerfiles = new ArrayList(); public Settings01 set=new Settings01(); public PerfilAdapter(Context context,List lista) { mContext = context; mLayoutInflater = (LayoutInflater) mContext .getSystemService(Context.LAYOUT_INFLATER_SERVICE); listaPerfiles=lista; } @Override public int getCount() { // TODO Auto-generated method stub return listaPerfiles.size(); } @Override public Object getItem(int […]

将ViewPager作为ListView中的行放置

我尝试使用ViewPager作为ListView中的一行但是得到一个奇怪的行为 – 只有第一行有效,但是当我滚动列表时它会消失。 当我滚动一个空行时,突然看到上面的行。 似乎Android创建了一个单一的寻呼机并将其用于所有行。 这是我在启动应用程序时看到的内容: 这是我的行布局: 这是我的List适配器: public class MyFriendsAdapter extends BaseAdapter implements OnClickListener { private ArrayList mItems; private Context mContext; private FragmentManager mFragmentManager; public MyFriendsAdapter(Context context, ArrayList items, FragmentManager fragmentManager) { mContext = context; mItems = items; mFragmentManager = fragmentManager; } @Override public int getCount() { return mItems.size(); } @Override public Object getItem(int […]

Android Curved Listview

我在android中实现了一个listview,看起来就像这样并滚动 我一直在通过在我的适配器的getView中设置膨胀行的布局参数来做到这一点,但由于这个问题导致的问题是列表视图变得生涩。 即,只有当一行完全从屏幕传递并且已调用getView时,才会更新行,并为所有可见行提供新参数,从而导致可以应用animation,并且可以预先获取listview滚动位置。 我想要的是视图之间的平滑过渡,即当列表视图向上移动时,内部视图应该与该移动精确地缩放。 这是我解决这个问题的第一级实现,希望它可以帮助任何感兴趣的人,使用Bezier路径算法在活动开始时动态创建arrHeight和arrWidth public class TimelinePinsAdapter extends ParentLazyAdapter { LinearLayout ll_PinsContainer; LinearLayout.LayoutParams llParams_PinParameters; public TimelinePinsAdapter(Activity a, ArrayList<HashMap> d) { super(a, d); } public int getCount() { return data.size(); } public Object getItem(int position) { return position; } public long getItemId(int position) { return position; } public View getView(int position, View convertView, ViewGroup parent) […]

滚动期间我的ListView背景变黑 – 如何修复?

我已经为几乎所有小部件指定了白色背景,除了滚动时它才有效。 滚动期间背景容器变黑,导致恼人的闪烁。

自定义ListView和上下文菜单。 怎么弄呢?

我的应用程序中有两个布局文件。 我还有Activity扩展ListActivity。 此活动的每个项目都会考虑item.xml布局文件。 我在长按项目时尝试获取上下文菜单,但我没有看到它。 在我的活动中,我尝试registerForContextMenu(getListView())并覆盖两个方法 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Bundle bundle = this.getIntent().getExtras(); registerForContextMenu(getListView()); new PopulateAdapterTask().execute(ACTION_SELECT); } @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.context_menu, menu); } @Override public boolean onContextItemSelected(MenuItem item) { AdapterView.AdapterContextMenuInfo info; try { info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo(); } catch (ClassCastException e) […]

将GridView添加到Android中的ListView

我正在尝试创建一个ListView,它将包含两种types的元素:字符串和GridView。 即将两个字符串和一个GridView放在一个ListView中。 布局应如下所示: 字符串项1.1 字符串项目1.2 字符串项1.3 字符串项1.4 GridView项目1 GridView项目2 GridView项目3 GridView项目4 字符串项2.1 字符串项目2.2 字符串项2.3 字符串项2.4 有没有办法做到这一点? 到目前为止,我只能显示GridView中的第一个项目,它只是ListView中的常规String元素。 代码可以在这里查看: CustomListViewActivity.java SectionAdapter.java main.xml中 header_row.xml simple_list_row.xml grid_list_row.xml 任何帮助表示赞赏:)

HashMap到ListView

我有HashMap,我怎么能把它放在ListView中? 哪个适配器需要使用? public void showCinemas(HashMap cinemas) { …//What? list.setAdapter(adapter); }

ListView的setOnClickListener无法正常工作

所以即时通讯试图为我的ListView设置一个setOnClickListener但由于某种原因导致我的程序崩溃,当我尝试..我很新的编程,所以当涉及到故障排除我真的不能做任何可悲的事情:(我的代码是在下面所以任何关于可能出错的想法都会非常有帮助 public class HomePageActivity extends Activity { //ListView that holds the items ListView lstTest; //Array Adapter that holds the ArrayList and displays the items on the ListView AlertsAdapter arrayAdapter; //List that hosts the items ArrayList<Alerts> alrts = null; /** Called when the activity is first created. */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.homepage); […]