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

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
Twi7ter
3 / 3 / 1
Регистрация: 27.03.2013
Сообщений: 147
#1

Калькулятор на андроиде - Программирование Android

14.07.2014, 16:33. Просмотров 1158. Ответов 2
Метки нет (Все метки)

Пытался программно накидать кнопок чтобы калькулятор получился,но в итоге ничего не работает,в логе какие то непонятные ошибки,подскажите что не так?
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
package com.example.www;
 
import android.app.ActionBar.LayoutParams;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;
 
public class MainActivity extends Activity {
 
    Button[] NumbButtons;
    Button btnPlus, btnMinus, btnEqual, btnMult, btnDiv, btnDelete, btnPoint,btnClear;
    TextView tv;
 
    
    public void onCreate(Bundle savedInstanceState) {
        
        super.onCreate(savedInstanceState);
        
        // setContentView(R.layout.activity_main);
        LinearLayout Tab = new LinearLayout(this);//
        
        Tab.setOrientation(LinearLayout.VERTICAL);
        
        LinearLayout[] TableRows = new LinearLayout[5];// строки
        
        // параметры
        LayoutParams TableParams = new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT);// параметры гланого лэйаута
        LinearLayout.LayoutParams BtnParams = new LinearLayout.LayoutParams(
                LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);// параметры
                                                                        // кнопок
        LinearLayout.LayoutParams RowParams = new LinearLayout.LayoutParams(
                LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);// параметры
                                                                        // лэйаут
                                                                        // строк
        LinearLayout.LayoutParams strParams = new LinearLayout.LayoutParams(
                LayoutParams.WRAP_CONTENT, LayoutParams.FILL_PARENT);// параметры
                                                                        // ТекстВью
        setContentView(Tab, TableParams);
        // закидываем строки на лэйаут
        for (int i = 0; i < TableRows.length; i++) {
            TableRows[i] = new LinearLayout(this);
            TableRows[i].setOrientation(LinearLayout.HORIZONTAL);
            
            Tab.addView(TableRows[i], RowParams);
        }
        
        // строка вывода
        tv = new TextView(this);
        tv.setBackgroundColor(Color.CYAN);
        tv.setTextColor(Color.BLACK);
        // tv.setTextSize(10);
        tv.setText("0.00");
        strParams.weight = 3;
 
        // ///////////////создаем кнопки
 
        // numbs0-9
        NumbButtons = new Button[10];
        BtnParams.weight = 1;
        for (int i = 0; i < NumbButtons.length; i++) {
            NumbButtons[i] = new Button(this);
            NumbButtons[i].setText(Integer.toString(i));
 
        }
 
        // clear
        btnClear = new Button(this);
        btnClear.setText("C");
 
        // div
        btnDiv = new Button(this);
        btnDiv.setText("/");
 
        // mult
        btnMult = new Button(this);
        btnMult.setText("*");
 
        // plus
        btnPlus = new Button(this);
        btnPlus.setText("+");
 
        // minus
        btnMinus = new Button(this);
        btnMinus.setText("-");
 
        // equals
        btnEqual = new Button(this);
        btnEqual.setText("=");
 
        // point
        btnPoint = new Button(this);
        btnPoint.setText(".");
 
        // размещаем объекты на лэйаутах
 
        TableRows[4].addView(tv, strParams);
        TableRows[4].addView(btnClear, BtnParams);
    
        for (int i = 1; i < TableRows.length - 1; i++) {
            for (int j = 1; j < NumbButtons.length; j++) {
                TableRows[i].addView(NumbButtons[j], BtnParams);
            }
 
        }
 
        TableRows[3].addView(btnDiv, BtnParams);
        TableRows[2].addView(btnMult, BtnParams);
        TableRows[1].addView(btnMinus, BtnParams);
        TableRows[0].addView(btnPoint, BtnParams);
        TableRows[0].addView(NumbButtons[0], BtnParams);
        TableRows[0].addView(btnEqual, BtnParams);
        TableRows[0].addView(btnPlus, BtnParams);
 
    }
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.07.2014, 16:33     Калькулятор на андроиде
Посмотрите здесь:

Debug на андроиде - Программирование Android
Здравствуйте. Как вы думаете, с помощью debug можно узнать как будет загружаться процессор (и ОП) в разные моменты выполнения программы или...

Базы данных в андроиде - Программирование Android
Структура данных примерно такова public class Stat { int id, key_id; List&lt;String&gt; date; List&lt;String&gt; rub_1; ...

LED индикаторы на андроиде - Программирование Android
Подскажите как ими можно программно управлять?

Простенькая программа на андроиде - Программирование Android
Требуется написать несложную программу на андроиде, вращение одного предмета в трехмерном пространстве. Кто возьмется и какая цена вопроса?

Questions новичка в андроиде - Программирование Android
Недавно начал изучать андроид и возникли следующие вопросы: 1) В чем преимущество использования фрагментов по сравнению с обычным вызовом...

Файловые диалоги в андроиде - Программирование Android
Открыть/сохранить файл, выбрать каталог и т.д. Насколько я понял готовых как в windows нету. Может есть какие то сторонние либы ???

Смена бекграунда на андроиде - Программирование Android
Всем доброго времени суток. У меня появилась небольшая проблема. Опишу ее через &quot;что я хочу&quot;, &quot;что я пробовал&quot; и &quot;что выходит&quot;. Что...

Запись звука на Андроиде - Программирование Android
Здравствуйте. Только начал осваивать андроид ( с Java знаком неплохо). У меня следующая задача: 1) написать диктофон 2) добавить...

Смена бекграунда на андроиде - Программирование Android
Всем доброго времени суток. У меня появилась небольшая проблема. Опишу ее через &quot;что я хочу&quot;, &quot;что я пробовал&quot; и &quot;что выходит&quot;. Что...

Защита приложения на Андроиде - Программирование Android
Ребят, доброго времени суток всем! Есть программа. Нужно: защитить, выпустить собранное apk с защитой, чтобы не смогли вскрыть,...

Масштабирование компонентов на андроиде - Программирование Android
Сейчас пытаюсь освоить андроид 2.3.3 (но если окажется, что там все плохо, то может повышу версию). Суть проблемы: нужно расставить 6...

Авторизация на сайте с клиента на андроиде - Программирование Android
Решил написать для себя небольшое приложения для просмотра баланса у интернет-провайдера. с адроидом знаком меньше 2х недель, поэтому...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Lers
12 / 12 / 3
Регистрация: 27.05.2012
Сообщений: 203
14.07.2014, 16:45     Калькулятор на андроиде #2
http://startandroid.ru/ru/uroki/vse-...lkuljator.html
Twi7ter
3 / 3 / 1
Регистрация: 27.03.2013
Сообщений: 147
15.07.2014, 18:17  [ТС]     Калькулятор на андроиде #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
В цикле косяк был в последнем
Yandex
Объявления
15.07.2014, 18:17     Калькулятор на андроиде
Ответ Создать тему
Опции темы

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