Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
disx
23 / 23 / 0
Регистрация: 26.02.2014
Сообщений: 582
Записей в блоге: 1
#1

Ругается на метод append(); ?

24.03.2015, 13:47. Просмотров 959. Ответов 7
Метки нет (Все метки)

Приветствую!

есть класс:
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
public class MainActivity extends ActionBarActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
     final TextView text=(TextView)this.findViewById(R.id.textView1);
     LocationManager manager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
     
     text.append("Список провайдеров положения:/n");
     List<String> providers = manager.getAllProviders();
     for (int i=0; i < providers.size(); i++){
         String provider=providers.get(i);
         text.append("/nПровайдер: "+provider);
         text.append("/nСтатус: "+manager.isProviderEnabled(provider)+"/n");
         
         Criteria criteria = new Criteria();
         criteria.setAccuracy(criteria.ACCURACY_FINE);
         criteria.setPowerRequirement(Criteria.POWER_LOW);
         criteria.setAltitudeRequired(true);
         criteria.setBearingRequired(true);
         criteria.setCostAllowed(true);
         criteria.setSpeedRequired(true);
         String BestProvider = manager.getBestProvider(criteria, true);
         text.append("/nЛучший Провайдер: "+BestProvider);
         
//       Toast toast = Toast.makeText(
//                  getApplicationContext(), BestProvider,
//                  Toast.LENGTH_SHORT);
//          toast.show();
 
     }
     
        
        
    }
 
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}
Почему ругается на text.append, если их все закоментить приложение запускается?

ошибки такие:

HTML5
1
java.lang.RuntimeException: Unable to start activity ComponentInfo
Добавлено через 20 часов 1 минуту
Че за такой ComponentInfo ?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2015, 13:47
Ответы с готовыми решениями:

Связь append и replace в EditText и SpannableStringBuilder
Читаю исходники стандартного Калькулятора Google, было интересно как в нём...

Почему все падает, если раскомментить строку tv.append(" extra"); ?
Добрый день! Хочу сделать так, чтобы приложение с интервалом в 0,5 сек выводило...

Добавить метод Append
namespace cyber1 { class Program { static void Main() { ...

Не работает метод Append в ADOQuery
Приветствую. Имеется база данных (СУБД Access). Схема данных изображена во...

Метод append и привязанные обработчики событий
Здравствуйте, уважаемые форумчани. Есть проблема с методом append(). ...

7
Pablito
2713 / 2159 / 732
Регистрация: 12.05.2014
Сообщений: 7,532
Завершенные тесты: 1
24.03.2015, 13:53 #2
можно было уже сто раз нагуглить самому
append не даст вызвать не из UI потока, у меня IDE даже метод такой не подсвечивает если пытаться его прописать внутри метода onCreate
0
disx
23 / 23 / 0
Регистрация: 26.02.2014
Сообщений: 582
Записей в блоге: 1
25.03.2015, 08:14  [ТС] #3
Паблито, не совсем понимаю о чем речь, такой пример работает:

Кликните здесь для просмотра всего текста
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
import android.app.Activity;
import android.content.Context;
import android.location.Criteria;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;
 
public class FindBestProvidersActivity extends Activity {
    
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        setContentView(R.layout.main);
        
        final TextView text = (TextView)findViewById(R.id.text);
                       
        LocationManager manager = (LocationManager)getSystemService(
                      Context.LOCATION_SERVICE);
            
        text.append("List of Location providers\n");    
        List<String> providers = manager.getAllProviders();
            for (int i = 0; i < providers.size(); i++) {
                String provider = providers.get(i);
                text.append("\nProvider: " + provider);
                text.append("\nEnabled: " + 
                        manager.isProviderEnabled(provider) + "\n");
        }                
            
        Criteria criteria = new Criteria();
        criteria.setAccuracy(Criteria.ACCURACY_FINE);
        criteria.setPowerRequirement(Criteria.POWER_LOW);
        criteria.setAltitudeRequired(true);
        criteria.setBearingRequired(true);
        criteria.setCostAllowed(true);
        criteria.setSpeedRequired(true);
        
        String bestProvider = manager.getBestProvider(criteria, true);
        text.append("\nBest provider: " + bestProvider);               
    }
}


а код я брал с него.
0
Pablito
2713 / 2159 / 732
Регистрация: 12.05.2014
Сообщений: 7,532
Завершенные тесты: 1
25.03.2015, 10:02 #4
Лучший ответ Сообщение было отмечено disx как решение

Решение

я думаю что причина в этом
extends ActionBarActivity не то же самое что extends Activity

может и ошибаюсь, я не работал с ActionBar, в большинстве случаев это лишний элеменнт интерфейса, который только место на экране занимает
0
disx
23 / 23 / 0
Регистрация: 26.02.2014
Сообщений: 582
Записей в блоге: 1
25.03.2015, 11:43  [ТС] #5
Паблито,

может и ошибаюсь, я не работал с ActionBar, в большинстве случаев это лишний элеменнт интерфейса, который только место на экране занимает
а что вместо него лучше использовать?
0
Pablito
2713 / 2159 / 732
Регистрация: 12.05.2014
Сообщений: 7,532
Завершенные тесты: 1
25.03.2015, 11:53 #6
это было просто мое мнение, его не стоит принимать во внимание

я не сказал что плохой элемент, а лишний, в том смысле что его вечно пытаются впихнуть на экран, потому что это типа круто
0
disx
23 / 23 / 0
Регистрация: 26.02.2014
Сообщений: 582
Записей в блоге: 1
25.03.2015, 12:12  [ТС] #7
Паблито,
я не сказал что плохой элемент, а лишний, в том смысле что его вечно пытаются впихнуть на экран, потому что это типа круто
а все-таки, какая альтернатива(просто Вы написали что с ActBar не работали, а что его может заменить) по Вашему мнению?
0
Pablito
2713 / 2159 / 732
Регистрация: 12.05.2014
Сообщений: 7,532
Завершенные тесты: 1
25.03.2015, 12:21 #8
зачем я сказал что он лишний, кто меня за язык тянул...

я просто вижу приложения на маркете, в которых action bar есть, но он не используется
что в нем - три точки и супер крутой значек поиска? ах да, еще название приложения...не очень экономная трата места на экране

на многих устройствах есть аппаратная кнопка Меню, а если нет - ну так используйте action bar, ради бога
1
25.03.2015, 12:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.03.2015, 12:21

Используя метод append() вывести изображения img
Задача такая. В HTML уже есть картинки: &lt;div id=&quot;slider&quot;&gt; &lt;img...

Реализовать метод append для класса String
Для работы со строками можно придумать множество полезных методов (подумайте,...

Чем метод adoquery sql.add отличается от метода sql.append этого компонента?
Чем метод adoquery sql.add отличается от метода sql.append этого компонента?


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru