مقالات تخصصی برنامه نویسی اندروید

اموزش برنامه نویسی اندروید

مقالات تخصصی برنامه نویسی اندروید

اموزش برنامه نویسی اندروید

۳ مطلب در بهمن ۱۳۹۸ ثبت شده است

  • ۰
  • ۰

 

 

   public void open(View view){

      AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);

      alertDialogBuilder.setMessage("Are you sure,

         You wanted to make decision");

      alertDialogBuilder.setPositiveButton("yes",

         new DialogInterface.OnClickListener() {

         @Override

         public void onClick(DialogInterface arg0, int arg1) {

            Toast.makeText(MainActivity.this,"You clicked yes

               button",Toast.LENGTH_LONG).show();

         }

      });

 

      alertDialogBuilder.setNegativeButton("No",new DialogInterface.OnClickListener() {

         Override

         public void onClick(DialogInterface dialog, int which) {

            finish();

         }

; (    {

 

   ;( )  AlertDialog alertDialog = alertDialogBuilder.create

      alertDialog.show();

{

{


 

  • vahid hasani
  • ۰
  • ۰

ActionBar

 

 

ActionBar ابزاری است که جایگزین منو های قدیمی شده است و روشی برای استفاده از امکانات پر استفاده یا سایر امکانات خاص است که راحتی کار با نرم افزار اندرویدی را افزایش می دهد ، ActionBar به نوار بالای برنامه گفته می شود که می تواند شامل دکمه ، دکمه متن دار ، زیر منو ، تب ، انتخاب گر نوار کشویی ، ابزار جست و جو باشد ، در ادامه می بینید که با این ابزار امکانات زیاد و زیبایی را می توان به برنامه اضافه کرد.

 

قبل از اینکه با ActionBar  آشنا شویم بهتر است مروری بر منو داشته باشیم ، ابتدا یک برنامه ساده اندرویدی ایجاد می کنیم و minSdkVersion را برابر با 11 قرار می دهیم.

 

در داخل پوشه res پوشه جدیدی به نام menu ایجاد می کنیم ، در داخل این پوشه فایل جدیدی به نام main_menu.xml ایجاد می کنیم و کد زیر را در داخل آن می نویسیم :

 

<?xml version="1.0" encoding="utf-8"?>

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

   

    <item android:id="@+id/setting"

        android:title="setting"/>

   

    <item android:id="@+id/search"

        android:title="search"/>

   

    <item android:id="@+id/about"

        android:title="about"/>

 

</menu>

 

 

 

فایل xml اصلی برنامه (activity_main.xml)   را به شکل زیر طراحی می کنیم :

 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:gravity="center" >

 

    <TextView

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:textSize="40sp"

        android:text="Main Page" />

 

</RelativeLayout>

 

 

 

کد جاوای اکتیویتی اصلی برنامه را نیز به شکل زیر می نویسیم :

 

package safecomp.ir.actionbarexample;

 

import android.app.Activity;

import android.os.Bundle;

import android.view.Menu;

 

public class MainActivity extends Activity {

 

            @Override

            protected void onCreate(Bundle savedInstanceState) {

                        super.onCreate(savedInstanceState);

                        setContentView(R.layout.activity_main);

            }

           

            @Override

            public boolean onCreateOptionsMenu(Menu menu) {

                        getMenuInflater().inflate(R.menu.main_menu, menu);

                        return super.onCreateOptionsMenu(menu);

            }

}


 

  • vahid hasani
  • ۰
  • ۰

 

نتیجه اجرای کدهای HTML را می توانیم در یک WebView نمایش بدهیم، اما علاوه بر WebView ، در TextView نیز می توان حاصل اجرای کدهای HTML را نمایش داد

 

مثلا تگ های h1 تا h6 باعث بزرگتر نمایش داده شدن در TextView می شوند. البته باید در همین ابتدا تذکر داده شود که برای برخی از تگ های (tags) مربوط به HTML ، باید یک سری کد بنویسیم تا درست عمل کنند. مثلا برای تگ a که برای نمایش یک لینک (link) است، لینک نمایش داده می شود اما با اشاره بر روی آن، به صفحه مقصد منتقل نمی شویم و برای تصحیح این مشکل، باید کمی کد بنویسیم. بنابراین اگر برای نمایش نتیجه اجرای کدهای HTML ، زیاد برایتان تفاوتی بین WebView و TextView نیست، توصیه می شود از همان WebView استفاده کنید، اما اگر از برخی ویژگی های TextView می خواهید استفاده کنید، در ادامه چگونگی اجرای کدهای HTML در یک TextView را شرح خواهیم داد.

 

فرض کنید که یک TextView با id برابر textView1 داریم. متن مورد نظرمان را که حاوی تگ های HTML نیز می باشد، در متغیری با نام myText ذخیره می کنیم و برای نمایش آن در TextView ، کدهای زیر را می نویسیم :

 

String myText = "www.kelidestan.com <h2>www.kelidestan.com</h2> www.kelidestan.com;"

Spanned sp = Html.fromHtml(myText);

TextView tv = (TextView) findViewById(R.id.textView1);  

tv.setText(sp);

 

بنابراین چون در بخشی از متن، از تگ h2 استفاده کرده ایم، آن بخش از متن، بزرگتر نمایش داده می شود.

 

مهمترین بخش از کدها، استفاده از روش Html.fromHtml می باشد.

نکته

 

همان طور که قبلا گفتیم، روش فوق، برای برخی تگ های HTML ، ممکن است درست عمل نکند. مثلا فرض کنید که در متن مورد نظرمان، یک لینک تعریف کرده باشیم (با تگ a) :

 

String myText = "<a href=\"http://www.kelidestan.com/\">www.kelidestan.com</a;>"

Spanned sp = Html.fromHtml(myText);

TextView tv = (TextView) findViewById(R.id.textView1);

tv.setText(sp);

 

دقت کنید که قبل از علامت های " در متن، باید علامت \ را بنویسیم تا با خطا روبرو نشویم. اگر کد بالا اجرا شود، لینک نمایش داده می شود، اما با کلیک بر روی آن، به صفحه مقصد منتقل نمی شویم. برای آنکه لینک به درستی عمل کند، باید یک خط کد به کدهایمان اضافه کنیم :

 

tv.setMovementMethod(LinkMovementMethod.getInstance());

 

بنابراین کل کدهایمان به صورت زیر می باشد :

 

String myText = "<a href=\"http://www.kelidestan.com/\">www.kelidestan.com</a;>"

Spanned sp = Html.fromHtml(myText);)TextView tv = (TextView) findViewById(R.id.textView1);

tv.setText(sp);

tv.setMovementMethod(LinkMovementMethod.getInstance());

 

با این کدها، هنگام اشاره کاربر بر روی لینک، مرورگر اینترنت گوشی اندروید وی باز شده و آن صفحه مقصد را نمایش می دهد.


 

  • vahid hasani