2010-01-20 3 views
0

Может кто-нибудь просветить меня, почему value/strings.xml является полезным (важным)?Значение/strings.xml против макета/*. Xml

Мне пришло в голову, что все метки attributes, например, id, могут быть установлены в макете xml. Итак, почему strings.xml?

Вопрос о том, как только получить идентификатор объекта, скажем listitem, как мне получить андроид: текст из него?

Я не нашёл getText() функции.

ответ

8

Он позволяет легко предоставлять альтернативные языки и конфигурации. Дополнительную информацию см. В разделе Resources and Internationalization (особенно раздел «Альтернативные ресурсы») в Руководстве для разработчиков.

Для вашего второго вопроса, возможно, вы ищете resolveInfo.nonLocalizedLabel или resolveInfo.loadLabel(getPackageManager())?

Эта страница справочника для ResolveInfo должна помочь вам найти то, что вы хотите.

2

Чтобы ответить на ваш второй вопрос, вы можете использовать findViewById(...) в своей деятельности, чтобы получить класс вида.

Из класса «Вид» вы можете позвонить getText().

Чтобы получить доступ к представлениям элементов списка в ListView, переопределите метод getView() в вашем адаптере.

Например:

new SimpleAdapter(Activity.this, model, R.layout.my_layout, from, to) { 

    public View getView(int position, View convertView, android.view.ViewGroup parent) { 

     View view = super.getView(position, convertView, parent); 

     View myView = findById(R.id.my_id); //< Access your view here! 

     return view; 
    }; 
+0

Как это может работать с ListItem в вопросе? – jball

+0

См. Мое редактирование для примера –

1

Для вашего второго вопроса:

Если идентификатор R.id.editText1, то вам нужно, чтобы получить контроль над EditText первым,

EditText editText1 = (EditText) findViewById(R.id.editText1); 

Тогда вы можете позвонить метод getText().

editText1.getText(); 
+0

Тот же комментарий, что и я, чтобы ответить Майре, как это может работать для ListItem? – jball

Смежные вопросы