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

Изменение элемена ListView - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Андроид пути http://www.cyberforum.ru/android-dev/thread818391.html
Доброго Всем времени суток. Подскажите пожалуйста, как мне сделать так чтобы моя программа или сразу устанавливалась на внешнюю память(microSD) или чтобы ее можно было туда перенести, а то я написал программу, а она отказывается переноситься на внешнюю память(microSD). Заранее спасибо!
Программирование Android Отличия drawable от Bitmap Чем отличается drawable от Bitmap? http://www.cyberforum.ru/android-dev/thread818308.html
Программирование Android Construct 2 как скомпилировать под андройд на free версии?
может хак есть?
Программирование Android Как создать изображение png?
Здравствуйте. Подскажите как создать png изображение с фоном RGB, и с надписями (чтобы координаты надписи можно было выставить) И, если можно, подскажите как сделать кнопку Поделиться для изображения.
Программирование Android TextView и картинкака http://www.cyberforum.ru/android-dev/thread818076.html
Доброго времени. есть вот такой код: <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" > <TextView android:id="@+id/tvMobNetworkState"
Программирование Android клиент-сервер Всем привет, помогите,пжлста, разобраться. Пытаюсь сделать простое клиент-сервер соединение (удп). Сервер запускается, но когда запускаю клиента на эмуляторе в андроиде, нажимаю кнопку, вроде как ничего не происходит. В консоле сервера ничего не появляется. В чем может быть проблема? в jave и androide я новичок. андроид: package com.asd.soed; import android.os.Bundle; import... подробнее

Показать сообщение отдельно
dell29
1 / 1 / 0
Регистрация: 06.08.2012
Сообщений: 32

Изменение элемена ListView - Программирование Android

26.03.2013, 03:30. Просмотров 1014. Ответов 1
Метки (Все метки)

Добрый вечер. Стоит задача изменять текстовое поле всех элементов ListView, но как то не выходит достучаться даже до одного элемента списка. Пробовал получить View элемента с помощью getChildAt(position) (так советуют здесь), почему то возвращает null, короче я в растерянности что делать и куда бежать. Может у кого нить есть какие то свежие мысли по этому поводу:

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
package com.example;
 
import java.util.ArrayList;
import java.util.Timer;
import java.util.TimerTask;
 
import android.os.Bundle;
import android.app.Activity;
import android.view.ContextMenu;
import android.view.Menu;
import android.view.View;
import android.view.ContextMenu.ContextMenuInfo;
import android.widget.ListView;
import android.widget.TextView;
 
public class MainActivity extends Activity {
    
    Menu menu;
    ArrayList<Item> list = new ArrayList<Item>();
    ListAdapter adapter;
    TextView counter;
    Timer timer = new Timer();
    ListView listView;
    
    int i = 0;
    
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        TextView textView = (TextView) this.findViewById(R.id.name_textView);
        registerForContextMenu(textView);
            
        counter = (TextView) findViewById(R.id.counter_textView);
        listView = (ListView) findViewById(R.id.listView1);
        
        fillDateList();
        adapter = new ListAdapter(list, this);
        listView.setAdapter(adapter);
                
    }
    
    @Override
    protected void onPostCreate(Bundle savedInstanceState) {
        super.onPostCreate(savedInstanceState); 
        
        
        int ferst = listView.getFirstVisiblePosition();
        View v = listView.getChildAt(ferst);
        TextView date = (TextView) v.findViewById(R.id.date_textView);
        date.setText("www");
        
        //timer.schedule(new UpdateTime(),0, 1000);
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return false;
    }
    
    @Override
    public void onCreateContextMenu(ContextMenu menu, View v,
            ContextMenuInfo menuInfo) {
        // TODO Auto-generated method stub
        super.onCreateContextMenu(menu, v, menuInfo);
    }
    
    
    void fillDateList() {
        for(int i = 0; i < 20; i++) {
            list.add(new Item("date" + i));
            
        }
    }
    
    class UpdateTime extends TimerTask {
        
 
        @Override
        public void run() {
            MainActivity.this.runOnUiThread(new Runnable() {
                
                @Override
                public void run() {
                     int visiblePosition = listView.getFirstVisiblePosition();
                     View v = listView.getChildAt(visiblePosition);
                     TextView dateTime = (TextView) v.findViewById(R.id.date_textView);
                     dateTime.setText("12");                    
                }
            });
 
        }
    }
        
    
}

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
package com.example;
 
import java.util.ArrayList;
 
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
 
public class ListAdapter extends BaseAdapter {
    
    ArrayList<Item> items = new ArrayList<Item>();
    Context ctx;
    LayoutInflater inflater;
    
    public ListAdapter(ArrayList<Item> items, Context ctx) {
        this.items = items;
        this.ctx = ctx;
        this.inflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }
    
    
 
    @Override
    public int getCount() {
        return items.size();
    }
 
    @Override
    public Item getItem(int position) {
        return items.get(position);
    }
 
    @Override
    public long getItemId(int position) {
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = convertView;
        Item item =getItem(position);
        view = inflater.inflate(R.layout.item, null);
        ((TextView) view.findViewById(R.id.name_textView)).setText(item.name);
        ((TextView) view.findViewById(R.id.date_textView)).setText(item.toStringToday());       
        return view;
    }
    
    
 
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package com.example;
 
import java.text.SimpleDateFormat;
import java.util.GregorianCalendar;
 
public class Item {
    String name;
    SimpleDateFormat formater = new SimpleDateFormat("hh:mm:ss");
    
    public Item(String name) {
        this.name = name;
    }
    
    String toStringToday() {
        return formater.format(new GregorianCalendar().getTime());
    }
 
}
Спасибо!!!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru