标签: simpleadapter

在ArrayAdapter和SimpleAdapter之间进行选择

我想知道,有什么指导方针,我们如何选择ArrayAdapterSimpleAdapter.

对于每个列表项,它们将由几个TextViews和Views呈现,这些布局很好.通过使用ArrayAdapter或,我意识到我可以毫无问题地实现它们SimpleAdapter.

我们如何选择它们是否有任何指导方针?我的猜测是

  1. ArrayAdapter使我们能够动态添加新项目,即使在此期间显示列表后也是如此.注意,ArrayAdapter有方法add.
  2. SimpleAdapter 用于大小写,一旦显示列表,就不能再添加新项目了.

这是我们应该遵循的准则吗?

android android-arrayadapter simpleadapter

21
推荐指数
1
解决办法
7657
查看次数

更改android.R.layout.simple_list_item_2中的文本颜色

我正在使用一个简单的适配器来显示我的代码.不幸的是,我需要更改顶部的textView颜色.

这是我的代码片段:

// Keys used in Hashmap
String[] from = { "txt1", "txt2" };
// Ids of views in listview_layout
int[] ids = { android.R.id.text1, android.R.id.text2 };
SimpleAdapter adapter = new SimpleAdapter(this, aList,
android.R.layout.simple_list_item_2, from, ids);
setListAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

我试图创建自己的simple_list_item_2,但由于某种原因,它不允许我在xml中更改textView的颜色.关于如何做到这一点的任何想法?

我最后的想法是:

findViewById(android.R.id.text1).setTextColor(#000) 但我不知道放在哪里,我的十六进制代码不起作用.

java xml android simpleadapter

8
推荐指数
2
解决办法
7194
查看次数

将SimpleAdapter与Spinner一起使用

我是Android开发的新手.我试图通过使用SimpleAdapter填充一个微调器.但是微调器的列表显示空白元素.当我单击任何元素时,其文本在Toast中正确显示.请告诉我下面的代码中有什么问题.

 public void onCreate(Bundle savedInstanceState) {

  private List<Map<String, String>> data = new ArrayList<Map<String, String>>();

  String[] from = new String[] { "colorsData" };
  int[] to = new int[] { R.id.spinner };

  String[] colors = getResources().getStringArray(R.array.colorsData);

  for (int i = 0; i < colors.length; i++) {
   data.add(addData(colors[i]));
  }

  Spinner spinner = (Spinner) findViewById(R.id.spinner);

  SimpleAdapter simpleAdapter = new SimpleAdapter(this, data, android.R.layout.simple_spinner_item, from, to);
  simpleAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  spinner.setAdapter(simpleAdapter);

  spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
   @Override
   public void onItemSelected(AdapterView<?> parent, View view,
     int position, long id) {
    Toast.makeText(
      parent.getContext(),
      "Selected …
Run Code Online (Sandbox Code Playgroud)

android spinner simpleadapter

7
推荐指数
1
解决办法
1万
查看次数

如何设置一个简单的适配器到listview?

我有问题添加arraylist到列表视图,这里将解释我的问题..告诉我这里有什么问题...我有三个线性布局,在中间布局我有列表视图,如下面的xml文件所示. `.

 <LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button" />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_weight="0.59"
        android:src="@drawable/x_title" />

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button" />
</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout_grouplist"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="0.09"
    android:orientation="vertical"
    android:weightSum="1" >

    <ListView
        android:id="@+id/listview_grouplist"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" >
    </ListView>

</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

    <Button
        android:id="@+id/button4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.39"
        android:text="TextView" />

    <Button
        android:id="@+id/button5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button" />
  </LinearLayout>
</LinearLayout>`
Run Code Online (Sandbox Code Playgroud)

当我尝试使用数组适配器将项目添加到列表时,它对我来说工作正常..但它不适用于列表适配器.它崩溃了.

ListAdapter adapter = new SimpleAdapter(this,
      mylist, 
      R.layout.grouplistlayout, 
      new String[] { …
Run Code Online (Sandbox Code Playgroud)

android android-listview simpleadapter

6
推荐指数
1
解决办法
3万
查看次数

如何在简单的适配器中显示imageview中的图像?

我从JSON数组获取数据,我可以在textviews中显示文本,但显示图像时出现问题.

这是主要活动:

public class test extends ListActivity {

// url to make request
private static String url = "http://test/json.php";

// JSON Node names
private static final String CONTACTS = "contacts";
private static final String NAME = "name";
private static final String IMAGE = "image";

// contacts JSONArray
JSONArray contacts = null;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // Hashmap for ListView
    ArrayList<HashMap<String, String>> contactList = new ArrayList<HashMap<String, String>>();

    // Creating JSON Parser instance
    JSONParser jParser = new JSONParser(); …
Run Code Online (Sandbox Code Playgroud)

android image imageview simpleadapter

6
推荐指数
1
解决办法
6084
查看次数

如何在onItemClick处理程序中获取项ID

我有两列的类别表category_idname.我创建了一个名为的数据助手类CategoryDataHelper.我有一个名为getCategoryCursor()该助手类的方法,它从类别表中获取id和名称并返回游标.使用该光标,我已经习惯SimpleCursorAdapter显示类别列表.它工作正常.

public class Categories extends ListActivity  {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        categoryDataHelper = new CategoryDataHelper(getApplicationContext());
        Cursor categoryCursor  = categoryDataHelper.getCategoryCursor();
        ListAdapter adapter = new SimpleCursorAdapter (
                this,  
                android.R.layout.simple_list_item_1,
                categoryCursor,                                              
                new String[] { CategoryDataHelper.NAME },           
                new int[] {android.R.id.text1});  

        // Bind to our new adapter.
        setListAdapter(adapter);

        list = getListView();
        list.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                // Here I want the category_id …
Run Code Online (Sandbox Code Playgroud)

android onclick simpleadapter onclicklistener

5
推荐指数
1
解决办法
1万
查看次数

Android:如何在自定义SimpleAdapter中删除项目时刷新列表

我可以知道在自定义SimpleAdapter中删除地图列表项后如何刷新ListView项目?

我已经用list.remove(position)成功实现了删除列表项,但是当我试图调用list.notifyAll()函数但它给了我一个错误消息,如"java.lang.IllegalMonitorStateException:对象在notifyAll之前没有被线程锁定()".

我希望你能帮助我.这是自定义SimpleAdapter的代码.

public class DeleteAdapter extends SimpleAdapter {

    Context context;
    List<? extends Map<String, ?>> list;
    int resource;
    String[] from;
    int[] to;

    public FDeleteAdapter(Context context, List<? extends Map<String, ?>> data,
            int resource, String[] from, int[] to) {
        super(context, data, resource, from, to);

        this.context = context;
        this.list = data;
        this.resource = resource;
        this.from = from;
        this.to = to;
        // TODO Auto-generated constructor stub
    }

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {

        final View row = super.getView(position, convertView, …
Run Code Online (Sandbox Code Playgroud)

android listview notify delete-row simpleadapter

5
推荐指数
1
解决办法
6834
查看次数

更好地理解SimpleAdapter的ViewBinder

我有4个TextViews,2个ImageViews,2个Buttons和2个小部件,它们是a中行定义的一部分ListView.数据来自XML和a SimpleAdapter.要访问这些,TextViewsViewBinde在自定义类中实现r并覆盖setViewValue.这是有效的,TextViews我想动态改变的两个是在setViewValue.令我困惑的是为什么我的另外两个TextView没有通过setViewValue.我这是基于设置一个断点,执行线程只输入两次.我期待看到它4次或更多次?

这是setViewValue我设置断点的地方.

@Override     
public boolean setViewValue(View view, Object data, String text)
{
    if(view.getId() == R.id.txtvw1)
    {             
//blah do some stuff
    }
    else if (view.getId() == R.id.txtvw2)
    {
//Blah do some stuff
    }

    return true;
} 
Run Code Online (Sandbox Code Playgroud)

xml声明TextViews(1显示,4不):

<TextView
        android:id="@+id/txtvw1"
        android:layout_centerHorizontal="true"
        android:layout_width="185dp"
        android:layout_height="25dp"
        android:textSize="20sp"
        android:layout_marginTop="60dp"
        android:gravity="center"
        android:inputType="none"
        android:text="@string/str_StaticA"
        android:textColor="#C0F700" />

    <TextView
        android:id="@+id/txtvw4"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="35dp"
        android:layout_width="95dp"
        android:layout_height="50dp" …
Run Code Online (Sandbox Code Playgroud)

android simpleadapter android-viewbinder

5
推荐指数
1
解决办法
3877
查看次数

我想在SimpleAdapter中使用Imageview?

有人能指出我在这个SimpleAdapter中获得ImageView的正确方向吗?TAG_IMAGE应该是Imageview.我得到这个:类型失配:无法从ImageView转换为int.是的,我是一个菜鸟.

protected void onPostExecute(String file_url) {
        // dismiss the dialog after getting all products
        pDialog.dismiss();
        // updating UI from Background Thread
        runOnUiThread(new Runnable() {
            public void run() {
                /**
                 * Updating parsed JSON data into ListView
                 * */
                ListAdapter adapter = new SimpleAdapter(
                        AllProductsActivity.this, productsList,
                        R.layout.list_item, new String[] { TAG_PID,
                                TAG_NAME, TAG_PRICE, TAG_RANDOM, TAG_IMAGE },                               
                        new int[] { R.id.pid, R.id.name, R.id.price,
                                R.id.random, R.id.image });
                // Imageview to show
                // updating listview
                setListAdapter(adapter);
            }
        });
Run Code Online (Sandbox Code Playgroud)

android android-imageview simpleadapter

5
推荐指数
1
解决办法
8353
查看次数

无法在ListFragment上使用SimpleAdapter

我正在Android片段中开发一个ListView.该类扩展了ListFragment.

我试过这个例子:http: //www.heikkitoivonen.net/blog/2009/02/15/multicolumn-listview-in-android/

但问题是,如果类扩展了ListFragment,则没有定义构造函数SimpleAdapter,将其更改为ListActivity会使SimpleAdapter工作,但是应用程序不会.

这是代码:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    // Inflate the layout for this fragment

    View tmp_view = inflater.inflate(R.layout.clients_list, container, false);
    ListView list = (ListView) tmp_view.findViewById(R.id.list);

    ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
    HashMap<String, String> map = new HashMap<String, String>();
    map.put("train", "101");
    map.put("from", "6:30 AM");
    map.put("to", "7:40 AM");
    mylist.add(map);
    map = new HashMap<String, String>();
    map.put("train", "103(x)");
    map.put("from", "6:35 AM");
    map.put("to", "7:45 AM");
    mylist.add(map);
    // ...
    SimpleAdapter mSchedule = new SimpleAdapter(this, mylist, …
Run Code Online (Sandbox Code Playgroud)

android listview fragment simpleadapter

4
推荐指数
1
解决办法
7036
查看次数