Программное добавление элементов в Android (Java)

В этой статье разбираемся как осуществить программное добавление элементов в Android. В следующем фрагменте кода показано объявление элементов, настройка их параметров и отображение их в LinearLayout.

Добавляем элементы в активити из кода

Привожу пример программного добавления элементов:

package razilov.ru;

import android.os.Bundle;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.view.Gravity;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        LinearLayout linearLayout = new LinearLayout(this);
        linearLayout.setOrientation(LinearLayout.VERTICAL);
        ViewGroup.LayoutParams linLayoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
        setContentView(linearLayout, linLayoutParams);


        ViewGroup.LayoutParams lpView = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);

        TextView tv = new TextView(this);
        tv.setText("TextView");
        tv.setLayoutParams(lpView);
        linearLayout.addView(tv);

        Button btn = new Button(this);
        btn.setText("Button");
        linearLayout.addView(btn, lpView);

        LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        layoutParams.leftMargin = 50;

        Button btn1 = new Button(this);
        btn1.setText("Btn1");
        linearLayout.addView(btn1, layoutParams);

        LinearLayout.LayoutParams layoutParams1 = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        layoutParams1.gravity = Gravity.RIGHT;

        Button btn2 = new Button(this);
        btn2.setText("btn2");
        linearLayout.addView(btn2, layoutParams1);

    }
}

Функция addView добавляет элемент в контрол.

Отображение переменных из конфигурационного файла (Smarty)

В папке configs создаем конфигурационный файл.
Например myconf.conf .

В нем пишем:

#Это просто комментарий
sitename = ‘My new WebSite’
author = ‘Nickolay Razilov’

В *.tpl файле в самом начале прописываем:

{config_load file=’myconf.conf’}

Отображаем переменные из myconf.conf в файле *.tpl:

Site name is {#sitename#} and author is {#author#}.

Установка Smarty

В папке с сайтом создаем 4 папки:

  1. cache
  2. configs
  3. templates
  4. templates_c

Скачиваем Smarty и копируем папку libs из архива со Smarty
в папку с сайтом. Для удобства можно переименовать libs в lib.

В php файле прописываем:

include_once «lib/smarty.class.php»;     //подключаем файл с классом Smarty
$smarty = new Smarty();                       //создаем объект smarty

Установка завершена. Проверяем.

$smarty->assign(‘name_var’, $name_var);    //передача параметров (Название переменной в  первом параметре и значение этой переменной во втором параметре).

$smarty->display(‘index.tpl’);                         //отображение шаблона  index.tpl (должен лежать в папке templates)

В шаблоне index.tpl пишем:

{$name_var}   —  нам отобразится переменная, заданная в файле index.php


/openmp (включение поддержки OpenMP 2.0)

Установка данного параметра компилятора в среде разработки Visual Studio

  1. Откройте диалоговое окно Страницы свойств проекта. Дополнительные сведения см. в разделе Открытие свойств страниц проекта.
  2. Разверните узел Свойства конфигурации.
  3. Разверните узел C/C++.
  4. Выберите страницу свойств Язык.
  5. Измените значение свойства Поддержка OpenMP.

Создание и удаление папок в терминале (Linux Debian)

1. Удаляем файл в текущей директории:
rm filename 

 2. Удаляем файл размещенный за пределами текущей директории:
 rm /path/to/folder/filename 

 3. Удаляем все файлы в директории:
rm /path/to/folder/* 

 4. Если удаления файла требует привилегий суперпользователя:
sudo rm filename 

 5. Удаляем пустую директорию:
rmdir foldername 

 6. Если директория содержит файлы и подпапки то используем следующую команду:
rm -r foldername 

 7. Если удаления директории требует привилегий суперпользователя:
sudo rm -r foldername

Актуальный Debian squeeze source.list

deb http://ftp.ru.debian.org/debian stable main contrib non-free
deb-src http://ftp.ru.debian.org/debian stable main contrib non-free

deb http://ftp.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp.debian.org/debian/ wheezy-updates main contrib non-free

deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free

Как сменить владельца папки и права на папку (Linux)

chgrp -R <группа> — смена группы

chown -R <юзер> <каталог> — смена владельца. Например chown -R nick /var

chmod -R <права> <каталог> — смена прав доступа