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

Ошибка при повороте экрана - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Установка измененного приложения на телефон http://www.cyberforum.ru/android-dev/thread673686.html
Кто подскажет в чем дело. Запускаю Eclipse, подключаю телефон, заливаю приложение, все работает. Далее изменяю что-нибудь в интерфейсе (например, добавляю новый виджет), компилирую, заливаю на...
Программирование Android Поиск и устранение ошибок в устроистве Задача стоит такая: нужно сделать программу-сканер, которая бы сканировала все области телефона или устройства, искала ошибки, которые могли возникнуть вовремя работы устройства, собирала бы это все... http://www.cyberforum.ru/android-dev/thread673483.html
Программирование Android ЯП для andoid
Доброго времени суток, хочу начать писать под андроид програмульки, пока не сложные, потом что-то сложнее и интереснее. Скажите какой лучше язык программирования выбрать? в чём разница...
Программирование Android Математика в Android
Дорогие товарищи у меня следующий вопрос: существует ли в Android*е математические символы, например интеграл, деление не наклоненное а ровное, и если есть где его найти и как пользоваться? Спасибо!
Программирование Android Android клиент передача XML сообщений http://www.cyberforum.ru/android-dev/thread672662.html
Здравствуйте. Имеется задача организовать общение приложения-клиента на Android с сервером посредством использования XML-сообщений. Опыта подобной разработки никогда не было, поэтому прошу...
Программирование Android ImageView, место в активити под него выделятся а изображение в него не грузится мне нужно динамически добавить несколько ImageView вот код: Friends_loi= (LinearLayout) item.findViewById(R.id.Friends_loi); for (int j = 0; j < 2; j++){ ... подробнее

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

Ошибка при повороте экрана - Программирование Android

17.10.2012, 22:19. Просмотров 1938. Ответов 4
Метки (Все метки)

Доброго времени суток, пишу по следующему вопросу:
Начал изучать программирование под андроид и создал простое приложение побаловаться. сделал 2 лейаута (layout/activity_m.xml, layout-land/activity_m.xml)
Код:
layout/activity_m.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
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
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
 
    <EditText
        android:id="@+id/txt_1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginTop="10dp"
        android:inputType="number|numberSigned|numberDecimal"
        android:minHeight="50dp" />
 
    <Spinner
        android:id="@+id/snr_znak"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@id/txt_1"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:entries="@array/spisok"
        android:minHeight="50dp" />
 
    <EditText
        android:id="@+id/txt_2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@id/snr_znak"
        android:layout_marginBottom="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:inputType="number|numberSigned|numberDecimal"
        android:minHeight="50dp" >
    </EditText>
 
    <TextView
        android:id="@+id/lbl_ravno"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/txt_2"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:gravity="center_vertical|center_horizontal"
        android:minHeight="50dp"
        android:text="@string/ravno"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
    <TextView
        android:id="@+id/lbl_ravno_zn"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/lbl_ravno"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:gravity="center_vertical|center_horizontal"
        android:minHeight="50dp"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
    <Button
        android:id="@+id/btn_calc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/lbl_ravno_zn"
        android:layout_alignRight="@+id/lbl_ravno_zn"
        android:layout_below="@+id/lbl_ravno_zn"
        android:layout_marginTop="10dp"
        android:height="50dp"
        android:onClick="onClick"
        android:text="@string/calc" />
 
    <TextView
        android:id="@+id/txt_dmb"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/btn_calc"
        android:layout_alignRight="@+id/btn_calc"
        android:layout_below="@+id/btn_calc"
        android:gravity="center_vertical|center_horizontal"
        android:maxHeight="50dp"
        android:minHeight="50dp"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
    <SeekBar
        android:id="@+id/skb_1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/txt_dmb"
        android:layout_alignRight="@+id/txt_dmb"
        android:layout_below="@+id/txt_dmb"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:max="255"
        android:progress="255" />
 
</RelativeLayout>
layout-land/activity_m.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
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
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
 
    <EditText
        android:id="@+id/txt_1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="300dp"
        android:layout_marginTop="10dp"
        android:ems="10"
        android:inputType="number|numberSigned|numberDecimal" />
 
    <EditText
        android:id="@+id/txt_2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_marginLeft="300dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="10dp"
        android:ems="10"
        android:inputType="number|numberSigned|numberDecimal" />
 
    <TextView
        android:id="@+id/lbl_ravno"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/txt_1"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="400dp"
        android:layout_marginTop="10dp"
        android:gravity="center_vertical"
        android:text="@string/ravno"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
    <TextView
        android:id="@+id/txt_dmb"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/btn_calc"
        android:layout_alignRight="@+id/btn_calc"
        android:layout_below="@id/btn_calc"
        android:layout_marginTop="10dp"
        android:maxHeight="50dp"
        android:shadowColor="#0f0f0f"
        android:shadowDx="5"
        android:shadowDy="5"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
    <TextView
        android:id="@+id/lbl_ravno_zn"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="false"
        android:layout_below="@id/txt_1"
        android:layout_marginLeft="80dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="10dp"
        android:gravity="center_vertical"
        android:minWidth="190dp"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
    <Spinner
        android:id="@+id/snr_znak"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="false"
        android:layout_marginLeft="185dp"
        android:layout_marginRight="185dp"
        android:layout_marginTop="10dp"
        android:entries="@array/spisok"
        android:minWidth="110dp" />
 
    <Button
        android:id="@+id/btn_calc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/lbl_ravno"
        android:layout_alignParentRight="true"
        android:layout_below="@id/lbl_ravno"
        android:layout_centerVertical="true"
        android:layout_marginRight="5dp"
        android:layout_marginTop="10dp"
        android:height="50dp"
        android:onClick="onClick"
        android:text="@string/calc" />
 
 <SeekBar
     android:id="@+id/skb_1"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
     android:layout_alignLeft="@+id/txt_dmb"
     android:layout_alignRight="@+id/txt_dmb"
     android:layout_below="@+id/txt_dmb"
     android:layout_marginLeft="10dp"
     android:layout_marginRight="10dp"
     android:max="255"
     android:progress="255" />
 
</RelativeLayout>
MA.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
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
package lagster.experement;
 
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Timer;
 
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.SeekBar;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
 
public class MA extends Activity
implements SeekBar.OnSeekBarChangeListener {
 
    Spinner znak;
    EditText txt_1, txt_2;
    TextView otvet, dmb;
    Double a, b, c;
    Long ddd;
    String dmb_text, dd, MM, yy, hh, mm, ss, sklonenie, bg_color;
    Timer myTimer;
    Handler uiHandler;
    Calendar D1, D2;
    Timer timer;
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_m);
        
        final SeekBar seekBar = (SeekBar)findViewById(R.id.skb_1);
        seekBar.setOnSeekBarChangeListener(this);
        
        txt_1 = (EditText) findViewById(R.id.txt_1);
        txt_2 = (EditText) findViewById(R.id.txt_2);
        otvet = (TextView) findViewById(R.id.lbl_ravno_zn);
        znak = (Spinner) findViewById(R.id.snr_znak);
        dmb = (TextView) findViewById(R.id.txt_dmb);
        D1 = Calendar.getInstance();
        D2 = Calendar.getInstance();
 
        Calendar cal = new GregorianCalendar();
        
        dd = new SimpleDateFormat("dd").format(cal.getTime());
        MM = new SimpleDateFormat("MM").format(cal.getTime());
        yy = new SimpleDateFormat("yyyy").format(cal.getTime());
        hh = new SimpleDateFormat("hh").format(cal.getTime());
        mm = new SimpleDateFormat("mm").format(cal.getTime());
        ss = new SimpleDateFormat("ss").format(cal.getTime());
        D1.set(Integer.valueOf(yy), Integer.valueOf(MM), Integer.valueOf(dd), Integer.valueOf(hh), Integer.valueOf(mm), Integer.valueOf(ss));
        D2.set(2013, 7, 5, 7, 0, 0);
        ddd = ((D2.getTimeInMillis()-D1.getTimeInMillis())/1000);
        if (ddd%10 == 1) {
            sklonenie = " секунда";
        }
        else if ((ddd%10 == 2) || (ddd%10 == 3) || (ddd%10 == 4)) {
            sklonenie = " секунды";
        }
        else {
            sklonenie = " секунд";
        }
        
        dmb_text =  ddd + sklonenie + " до дома.";
        dmb.setText(dmb_text);    
        if (seekBar.getProgress() > 16)
            bg_color = "#" + java.lang.Integer.toHexString(seekBar.getProgress()) + java.lang.Integer.toHexString(seekBar.getProgress())+java.lang.Integer.toHexString(seekBar.getProgress());
            
        else
            bg_color = "#0" + java.lang.Integer.toHexString(seekBar.getProgress()) + "0" + java.lang.Integer.toHexString(seekBar.getProgress()) + "0" + java.lang.Integer.toHexString(seekBar.getProgress());
        otvet.setText(bg_color);
    }
    
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_m, menu);
        return true;
    }
    
    public void onClick(View v){
        try {
            a = Double.valueOf(txt_1.getText().toString());
        }
        catch (NumberFormatException e) {
            a = 0.0;
        }
        try {
            b = Double.valueOf(txt_2.getText().toString());
        }
        catch (NumberFormatException e) {
            b = 0.0;
        }
 
        
        if (znak.getSelectedItemId() == 0) {
            c = a+b;
        } else if (znak.getSelectedItemId() == 1) {
            c = a-b;
        } else if (znak.getSelectedItemId() == 2) {
            c = a*b;
        } else {
            c = a/b;
        }       
        
        if (znak.getSelectedItemId() == 3 && b == 0) {
            otvet.setText("Деление на ноль");
        } else {
            otvet.setText(String.valueOf(c));
        }
        
    }
    
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle item selection
        switch (item.getItemId()) {
        case R.id.menu_close:
            quit();
            return true;
        default:
            Toast tost = Toast.makeText(getApplicationContext(), 
                       "Настройки", Toast.LENGTH_SHORT);
            tost.show();
            return super.onOptionsItemSelected(item);
        }
    }
 
   
    private void quit() {
        finish();
    }
        
    public void onProgressChanged(SeekBar seekBar, int progress,
            boolean fromUser) {
        // TODO Auto-generated method stub
        if (seekBar.getProgress() > 16)
            bg_color = "#" + java.lang.Integer.toHexString(seekBar.getProgress()) + java.lang.Integer.toHexString(seekBar.getProgress())+java.lang.Integer.toHexString(seekBar.getProgress());
            
        else
            bg_color = "#0" + java.lang.Integer.toHexString(seekBar.getProgress()) + "0" + java.lang.Integer.toHexString(seekBar.getProgress()) + "0" + java.lang.Integer.toHexString(seekBar.getProgress());
        otvet.setText(bg_color);
        
    }
 
    public void onStartTrackingTouch(SeekBar seekBar) {
        // TODO Auto-generated method stub
        
    }
 
    public void onStopTrackingTouch(SeekBar seekBar) {
        // TODO Auto-generated method stub
        
    }
}
До добавления СикБара проблем при повороте не было, а теперь при повороте оно закрывается с ошибкой
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.