Форум программистов, компьютерный форум, киберфорум
Наши страницы

Не могу задать банальные setOnClickListener - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Admob межстраничное объявление при запуске http://www.cyberforum.ru/android-dev/thread1220120.html
Очень нужны исходники, чтоб при запуске приложения, загружалось межстаничное объявление, но чтоб оно было только при запуске, соответственно, если юзверь перейдет на главную активность, реклама снова...
Программирование Android Нужно прояснение с getWidth и getSize Здравствуйте! Не так давно стал изучать программирование для андроид по учебнику Марио Цехнер - Программирование игр под Андроид. Все бы ничего, книга хорошая, но староватая. Так вот столкнулся с... http://www.cyberforum.ru/android-dev/thread1220083.html
Не работает первый пункт ActionBar Actions Программирование Android
Здравствуйте! Проблема с Menu в Fragment-е: Вот код фрагмента: package com.contedevel.qpicseditor; import android.app.Activity; import android.content.Intent; import android.net.Uri; import...
Программирование Android Добавление кнопок на LinearLayout на Java
Здравствуйте. Пытался создать LinearLayout и поместить на него 2 кнопки через Java. Но на LinearLayout отображается только та кнопка, которую я создал первой. Как сделать, чтобы отображались обе? ...
Программирование Android Листающаяся книга http://www.cyberforum.ru/android-dev/thread1219770.html
Здравствуйте друзья,доброго дня вам. Я ещё начинающий программист под ANDROID,посоветуйте пожалуйста как сделать приложения Листающий книгу похожую на:...
Программирование Android Поиск в listview с сохранением позиции элемента и открытия нужного html файла Реализован поиск в ListView через Edit, находит нужный элемент списка, но при клике и переходе на другое Activity открывает не соответствующий элементу html файл. Кто реально поможет с поиском ждёт... подробнее

Показать сообщение отдельно
Negor
57 / 56 / 4
Регистрация: 29.03.2010
Сообщений: 289

Не могу задать банальные setOnClickListener - Программирование Android

30.06.2014, 19:54. Просмотров 1035. Ответов 1
Метки (Все метки)

Делаю первые шаги в программировании под Andoriod. Запускаю в эмуляторе. Приложение падает. Как я понял - проблема в обрботчике клика на кнопке. Но понять почему оно падает не могу. Прошу помощи в исправлении ошибки. Лог

Код
06-30 11:47:59.476    1712-1712/ua.pp.bravo13.test E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: ua.pp.bravo13.test, PID: 1712
    java.lang.RuntimeException: Unable to start activity ComponentInfo{ua.pp.bravo13.test/ua.pp.bravo13.test.MyActivity}: java.lang.NullPointerException
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
            at android.app.ActivityThread.access$800(ActivityThread.java:135)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5017)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.NullPointerException
            at ua.pp.bravo13.test.MyActivity.onCreate(MyActivity.java:58)
            at android.app.Activity.performCreate(Activity.java:5231)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
************at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
************at android.app.ActivityThread.access$800(ActivityThread.java:135)
************at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
************at android.os.Handler.dispatchMessage(Handler.java:102)
************at android.os.Looper.loop(Looper.java:136)
************at android.app.ActivityThread.main(ActivityThread.java:5017)
************at java.lang.reflect.Method.invokeNative(Native Method)
************at java.lang.reflect.Method.invoke(Method.java:515)
************at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
************at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
************at dalvik.system.NativeStart.main(Native Method)
Код MyActivity.java
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
package ua.pp.bravo13.test;
 
import android.content.DialogInterface;
import android.os.CountDownTimer;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View.OnClickListener;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
 
 
public class MyActivity extends ActionBarActivity {
 
    private static final int MILLIS_PER_SECOND = 1000;
    private static final int SECONDS_TO_COUNTDOWN = 30;
 
    private TextView        countdownDisplay;
    private CountDownTimer  timer;
    private Button          startButton;
 
    private void showTimer(final int countdownMills) {
        if (timer != null) {timer.cancel();};
        timer = new CountDownTimer(countdownMills, MILLIS_PER_SECOND) {
            @Override
            public void onTick(long l) {
                countdownDisplay.setText("" + l / MILLIS_PER_SECOND);
            }
 
            @Override
            public void onFinish() {
                countdownDisplay.setText("DONE");
            }
        };
    }
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
        countdownDisplay = (TextView) findViewById(R.id.textView);
        startButton = (Button) findViewById(R.id.startButton);
 
        OnClickListener onClckLstn = new OnClickListener(){
            public void onClick(View view) {
                try {
                    showTimer(SECONDS_TO_COUNTDOWN * MILLIS_PER_SECOND);
                } catch (NumberFormatException e) {
                    // method ignores invalid (non-integer) input and waits
                    // for something it can use
                }
            }
        };
 
        try {
            startButton.setOnClickListener(onClckLstn);
        } catch (NumberFormatException e) {
            countdownDisplay.setText(""+e);
        }
 
 
        setContentView(R.layout.activity_my);
    }
 
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.my, 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);
    }
}
AndroidManifest.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="ua.pp.bravo13.test" >
 
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MyActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
 
</manifest>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.