Android ListView,从ListView中的数据库添加项目

Android ListView,从ListView中的数据库添加项目,android,Android,我有一个过程,在这个过程中,用户选择一个城市,然后在那个州看医生 我的结果显示了医疗机构的名称: @Override protected void onResume() { super.onResume(); setProgressBarIndeterminateVisibility(true); Bundle b = getIntent().getExtras(); final String[] resultA

我有一个过程,在这个过程中,用户选择一个城市,然后在那个州看医生

我的结果显示了医疗机构的名称:

 @Override
    protected void onResume() {
        super.onResume();

        setProgressBarIndeterminateVisibility(true);

        Bundle b = getIntent().getExtras();



        final String[] resultArr = b.getStringArray("selectedItems");

        String location = b.getString("selectedItems");



        ParseQuery<ParseUser> query = ParseUser.getQuery();

        query.orderByAscending(ParseConstants.KEY_PRACTICE_NAME);

        query.findInBackground(new FindCallback<ParseUser>() {
            @Override
            public void done(List<ParseUser> users, ParseException e) {
                setProgressBarIndeterminateVisibility(false);

                if (e == null) {
                    // Success
                    //store users variable in Parse to mMidwifeLocations
                    mMidwives = users;
                    mCurrentUser = ParseUser.getCurrentUser();
                    //mMidwifeType = ParseUser.getString("usertype");

                    //store users in string array, locations
                    String[] midwives = new String[mMidwives.size()];
                    String[] locations = new String[mMidwives.size()];
                    String check;
                    String location;

                    int i = 0;
                    for(ParseUser user : mMidwives) {
                        //get city value from user, assign it to check variable

                        location = user.getString("city");

                        check = user.getString("userType");

                        if (!Arrays.asList(midwives).contains(check) && type != "patient" && Arrays.asList(resultArr).contains(location) ) {

                            //in locations array, assign practiename values
                                midwives[i] = user.getString("practicename");


                        }
                    }
                    i++;

我还想在列表中列出主要联系人、地址和实践理念。这样做的最佳策略是什么?我正在使用一个简单的列表项列表类型…还有其他列表类型…不知道是否使用其中一种可能是答案..提前感谢..

首先,您可能希望在onCreate方法中完成所有这些

我不确定这是否是你想要的,但据我所知,我正在写这篇文章

我个人会在strings.XML中写下字符串数组中需要的所有数据

<string-array name="string_array">
<item name ="item1"> item1 </item>
.......
</string-array>
现在您应该能够定制listview布局了。如果出现任何问题,请对这个答案发表评论,我会尽力解决


祝你好运。

我只是想澄清一下;现在,我正在传递上一个活动中选择的城市,在OnResume中,我正在循环数据以查找所选城市中的所有医疗实践,适配器正在将此结果推送到listview…您的解决方案似乎有一个适配器,它从非listview的布局中提取信息,但是否将该布局转换为listview?我仍然希望结果受到查询的限制。所以我会将适配器代码放在我当前适配器的位置,现在它只是基于城市提取机构名称?我发现了这一点,但如果其他搜索者需要详细描述,这是一个很好的源代码
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content" android:layout_height="wrap_content">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Large Text"
    android:id="@+id/textView"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />
</RelativeLayout>
 class adapter extends BaseAdapter {

    ArrayList<SingleRow> arrayList;
    Context context;

    adapter(Context contxt) {
        context = contxt;
        arrayList = new ArrayList<SingleRow>();
        Resources res = contxt.getResources();
        String[] items= res.getStringArray(R.array.string_array);

        for (int i = 0; i < 1; i++) {//Change the 1 in i < 1 to how big your list is.
            arrayList.add(new SingleRow(items[i]));
        }

    }

    @Override
    public int getCount() {
        return arrayList.size();
    }

    @Override
    public Object getItem(int position) {
        return arrayList.get(position);
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

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

        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View row = inflater.inflate(R.layout.items_layout, parent, false);
        TextView item1 = (TextView) row.findViewById(R.id.txtItem1);
        SingleRow temp = arrayList.get(position);
        items.setText(temp.items);

        return row;
    }
}

class SingleRow {
    String items;
    SingleRow(String items) {
        this.items = items;

    }
}
ListView listView = (ListView) findViewById(R.id.itemListView);
listView.setAdapter(new adapter(getActivity()));