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

Как программно изменить - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Listfragment Super http://www.cyberforum.ru/android-dev/thread1699878.html
Добрый день в где тут проблема. public class ItemFragment extends ListFragment { @Override protected void attachBaseContext(Context newBase) { super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
Программирование Android Не пишет на диск Я пытаюсь записать настройки в файл но вылетает exception! Файл: /data/data/com.nekitsgames.lightcontrol/files/options.json (это папка моего приложения) Ошибка (IOException) : /data/data/com.nekitsgames.lightcontrol/files/options.json: open failed: EACCES (Permission denied) Код: ObjectMapper mapper = new ObjectMapper(); //Из библиотеки jackson, он а преобразовывает класс в json... http://www.cyberforum.ru/android-dev/thread1699799.html
Валидация в EditText Программирование Android
Как ограничить ввод в EditText, чтобы можно было вводить только следующее - Иванов В.П, Сидоров М.С. и так далее(ну вводить в EditText можно только Фамилию и инициалы)? Есть для этого какие то регулярные выражения или что здесь нужно использовать?
Unfortunately FrameLayout Программирование Android
Ставлю голенький FrameLayout кидает ошибочку Unfortunately has stopped В чем проблема? Android Studio. 03-31 09:52:00.081 24178-24178/su.appi.tushinomobile E/AndroidRuntime: FATAL EXCEPTION: main Process: su.appi.tushinomobile, PID: 24178 ...
Программирование Android переходы layout http://www.cyberforum.ru/android-dev/thread1699450.html
У меня подключен такой инклюдик <include layout="@layout/content_main" /> Я показываю там layout, но как мне кодом показать другой layout? setContentView(); не подходит, приложение крашит. ибо у меня при загрузке показывается и подгружаются 3 основных layout (ActionBar,NavDrawMenu,Content_Main) Content_Main нужно скрывать и показывать другой, при клике на кнопку, не могу понять как...
Программирование Android на каком языке писать Хочу начать программировать под андроид. Знаю только С/С++, я читал что программировать под андроид можно и на этом, но в основном программируют на яве. Есть ли принципиальная разница на чем писать? подробнее

Показать сообщение отдельно
vlad4475
4 / 4 / 0
Регистрация: 14.07.2015
Сообщений: 33

Как программно изменить - Программирование Android

31.03.2016, 19:31. Просмотров 270. Ответов 1
Метки (Все метки)

Здравствуйте! Не так давно учусь программировать под Андроид и столкнулся с такой проблемой:

Я хочу программно создать n кнопок и расположить их так, что бы они все помещались на экране в строчку (с помощью XML делать так умею, просто ставил width = 0, weight = 1 у всех кнопок). Но с динамическими кнопками такое не получается. Во-первых button.setWidth(0); (или даже button.setWidth(1) не даёт эффекта вообще, а weight я установить вообще не могу.

Долго искал, нашёл, что нужно делать через LayoutParams; button.setLayoutParams(params); Но когда я прописываю button.setLayoutParams(params);, то кнопки вообще исчезают...

Вот сам код:

Кликните здесь для просмотра всего текста
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
package com.example.myapp;
 
import android.app.Activity;
import android.os.Bundle;
import android.text.Layout;
import android.util.StringBuilderPrinter;
import android.view.ViewDebug;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TableLayout;
import android.widget.TableRow;
 
import java.lang.annotation.Annotation;
 
public class MyActivity extends Activity {
    /**
     * Called when the activity is first created.
     */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        GoWork();
    }
 
    void GoWork() {
        TableRow tableRow = (TableRow) findViewById(R.id.Row1);
        //tableRow.setLayoutParams(new TableLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT)); 
        ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(50, 50);
        for (int j = 0; j < 6; j++) {
            Button button = new Button(this); //Вот тут создаю свои кнопки 
            button.setText("" + j);
           // button.setWidth(2); - Вообще не работает
            [COLOR="Red"]button.setLayoutParams(params); //Когда активирую, то кнопки вообще не отображаются [/COLOR]
            tableRow.addView(button, j);
        }
 
    }
}


И вот что у меня в XML творится:

Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="fill_parent"
              android:layout_height="match_parent"
              android:orientation="vertical">
 
    <TableLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">
        <TableRow
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/Row1">
        </TableRow>
    </TableLayout>
</LinearLayout>


Вот как это выглядит, а я хочу, что бы они сжимались по размеру экрана.
Кликните здесь для просмотра всего текста
Как программно изменить


Подскажите пожалуйста, что я не так делаю?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru