Форум программистов, компьютерный форум CyberForum.ru

Поиск по лист вью - Android

Восстановить пароль Регистрация
 
lexus213
 Аватар для lexus213
3 / 3 / 0
Регистрация: 25.06.2011
Сообщений: 71
09.08.2013, 15:41     Поиск по лист вью #1
Помогите, кому не сложно, с приложением...не отображается лист вью, и соответственно не производится по нем поиск... хотя, по идее, он должен осуществляться, но даже массив не выводится!!

класс для осуществления поиска...
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
public class FragmentView3 extends Fragment {
 
    String[] listview_names = {"1","2","3","4","лол"};
    
    
   public EditText et;
    public ListView lv;
    
     
    private ArrayList<String> array_sort;
    int textlength=0;
 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {   
        super.onCreate(savedInstanceState);
  //      setContentView(R.layout.one);
 
        View myView = inflater.inflate(R.layout.search, container, false);
         
        et  = (EditText)myView.findViewById(R.id.EditText01);
        lv  =   (ListView)myView.findViewById(android.R.id.list);
         
        array_sort=new ArrayList<String> (Arrays.asList(listview_names));
        setListAdapter(new bsAdapter(getActivity()));
 
 
        et.addTextChangedListener(new TextWatcher()
        {
            public void afterTextChanged(Editable s)
            {
                  // Abstract Method of TextWatcher Interface.
            }
            public void beforeTextChanged(CharSequence s,
                    int start, int count, int after)
            {
                // Abstract Method of TextWatcher Interface.
            }
            public void onTextChanged(CharSequence s,
                    int start, int before, int count)
            {
                textlength = et.getText().length();
                array_sort.clear();
                for (int i = 0; i < listview_names.length; i++)
                {
                    if (textlength <= listview_names[i].length())
                    {
                     
                         
                        if(listview_names[i].toLowerCase().contains(
                                et.getText().toString().toLowerCase().trim()))
                        {
                            array_sort.add(listview_names[i]);
                        }
                      }
                }
                AppendList(array_sort);
                }
            });
         
        lv.setOnItemClickListener(new OnItemClickListener() {
 
            public void onItemClick(AdapterView<?> arg0,
                                View arg1, int position, long arg3)
            {
                switch (position) {
                case 0:
                    Intent intent = new Intent(getActivity(), bbns.class);
                    startActivity(intent);
            }
            }
        });
        return myView;
    }
     
    public void AppendList(ArrayList<String> str)
    {
        setListAdapter(new bsAdapter (getActivity()));
    }
     
    private void setListAdapter(bsAdapter bsAdapter) {
        // TODO Auto-generated method stub
        
    }
 
    public class bsAdapter extends BaseAdapter
    {
        Activity cntx;
        public bsAdapter(Activity context)
        {
            // TODO Auto-generated constructor stub
            this.cntx=context;
 
        }
 
        public int getCount()
        {
            // TODO Auto-generated method stub
            return array_sort.size();
        }
 
        public Object getItem(int position)
        {
            // TODO Auto-generated method stub
            return array_sort.get(position);
        }
 
        public long getItemId(int position)
        {
            // TODO Auto-generated method stub
            return array_sort.size();
        }
 
        public View getView(final int position, View convertView, ViewGroup parent)
        {
            View row=null;
             
            LayoutInflater inflater=cntx.getLayoutInflater();
            row=inflater.inflate(R.layout.list, null);
             
            TextView   tv   =   (TextView)  row.findViewById(R.id.title);
             
            tv.setText(array_sort.get(position));
             
        return row;
        } 
          }
}
search.xml

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/RelativeLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
 
    <EditText
        android:id="@+id/EditText01"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:hint=""
        android:text="@string/search" />
 
    <ListView
        android:id="@+id/android:list"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/EditText01"
        android:cacheColorHint="#00000000" >
 
    </ListView>
 
</RelativeLayout>
list.xml

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:padding="8dp">
 
    <TextView
        android:id="@+id/title"
        android:textColor="#000"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_margin="10dp"
        android:layout_height="wrap_content"/>
 
</LinearLayout>
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2013, 15:41     Поиск по лист вью
Посмотрите здесь:

Как поменять текст внутри вью полученного через layoutinflater? Android
Android приложение (Прайс-лист) Android
Добавить scroll view в собственный вью Android
Разворот вью на весь экран Android
Какая зависимость между размером шрифта и размером вью Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Wenceslaus
Android Developer
 Аватар для Wenceslaus
129 / 129 / 4
Регистрация: 05.07.2013
Сообщений: 205
09.08.2013, 17:55     Поиск по лист вью #2
Не мудрено. Пытаясь установить адаптер вы вызываете пустой метод setListAdapter(bsAdapter).
Yandex
Объявления
09.08.2013, 17:55     Поиск по лист вью
Ответ Создать тему
Опции темы

Текущее время: 11:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru