بررسی اجمالی
در زیر چند لینک مفید برای شروع برنامه نویسی در برنامه های Android آورده شده است.
- برنامه نویسی اندروید - روز اول
- برنامه نویسی اندروید - روز دوم
- نحوه نمایش ویندوز دیالوگ در اندروید
- نحوه نمایش پنجره گفتگوی پیشرفت در اندروید
- Intent در اندروید
- داده ها را با استفاده از Intent Object در برنامه های اندروید برگردانید
- انتقال داده با استفاده از یک شیء هدف در برنامه های اندروید
- قطعات در برنامه های اندروید
- افزودن قطعات به صورت پویا در برنامه اندروید
- چرخه زندگی قطعه در برنامه اندروید
- تعامل بین دو قطعه
- فراخوانی توابع داخلی در برنامه اندروید
- Intent Object و Intent Filters در برنامه اندروید
- نمایش اعلان ها در برنامه های اندروید
- رابط کاربری در برنامه های اندروید
- جهت گیری، لنگر انداختن، تغییر اندازه و تغییر موقعیت نماها در برنامه اندروید
- رفتار فعالیت زمانی که جهت صفحه در برنامه اندروید تغییر می کند
- در هنگام تغییرات در پیکربندی اطلاعات وضعیت را حفظ کنید
- تشخیص تغییرات جهت گیری و کنترل جهت گیری فعالیت
- استفاده از Action Bar در برنامه اندروید
معرفی
در این مقاله، ایجاد رابط کاربری با استفاده از کد را یاد می گیریم. تا کنون، ما تمام رابطهای کاربری را که شما ایجاد کردهاید، با استفاده از فایل XML دیدهایم، اما میتوانیم رابط کاربری را به صورت برنامهنویسی ایجاد کنیم. اگر برنامهای برای سیستم رزرو بلیط هواپیما ایجاد میکنید و برنامه شما قرار است با استفاده از دکمهها، صندلیها را برای هر مسیر سفر نشان دهد، این کار زمانی مفید است که UI در طول زمان اجرا باید به صورت پویا ایجاد شود. در این حالت، باید کد UI را به صورت پویا تولید کنید که بر اساس سفر هوایی انتخاب شده توسط کاربر است.
پیاده سازی
با انتخاب File->New->New Project یک پروژه جدید ایجاد کنید.
![](http://pezhvak24.ir/dl/10kcor/cscd/article/create-user-interface-programmatically-in-android-application/Images/P-1.png)
اکنون، مانند تصویر زیر، عناصری را اضافه کنید که برای ایجاد رابط کاربری در اندروید استفاده می شود.
- package com.example.administrator.actionbarapp;
- import android.app.ActionBar;
- import android.app.Activity;
- import android.support.v7.app.ActionBarActivity;
- import android.os.Bundle;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.view.ViewGroup;
- import android.widget.Button;
- import android.widget.CheckBox;
- import android.widget.EditText;
- import android.widget.LinearLayout;
- import android.widget.RadioButton;
- import android.widget.RadioGroup;
- import android.widget.TextView;
- import android.widget.Toast;
- public class MainActivity extends Activity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- //getSupportActionBar().setDisplayHomeAsUpEnabled(false);
- super.onCreate(savedInstanceState);
- //setContentView(R.layout.activity_main);
- //Create params for views---------------
- LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
- //Create a layout---------------
- LinearLayout linearLayout = new LinearLayout(this);
- linearLayout.setOrientation(LinearLayout.VERTICAL);
- //----Create a TextView------
- TextView textView = new TextView(this);
- textView.setText("This TextView is dynamically created");
- textView.setLayoutParams(params);
- //--Create A EditText------------------
- EditText editText = new EditText(this);
- editText.setLayoutParams(params);
- //----Create a CheckBox-------------
- CheckBox checkBox = new CheckBox(this);
- checkBox.setLayoutParams(params);
- //--- Create a RadioGroup---------------
- RadioGroup radioGroup = new RadioGroup(this);
- radioGroup.setLayoutParams(params);
- //--------Create a RadioButton----------
- RadioButton radioButton = new RadioButton(this);
- radioButton.setLayoutParams(params);
- //-----Create a Button--------
- Button button = new Button(this);
- button.setText("This Button is dynamically created");
- button.setLayoutParams(params);
- //---Add all elements to the layout
- linearLayout.addView(textView);
- linearLayout.addView(checkBox);
- linearLayout.addView(editText);
- linearLayout.addView(radioGroup);
- linearLayout.addView(radioButton);
- linearLayout.addView(button);
- //---Create a layout param for the layout-----------------
- LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ActionBar.LayoutParams.FILL_PARENT, ActionBar.LayoutParams.WRAP_CONTENT);
- this.addContentView(linearLayout, layoutParams);
- }
- }