آموزش ساخت کاستوم اکشن بار Actionbar Android

سوال : به خاطر مشکل اکشن بار که RtL نمیشه ، دنبال این هستم که یک اکشن بار کاستوم درست کنم تا بتونم چیزهایی که خودم نیاز دارم رو به اکشن بار اضافه کنم . لطفا راهنمایی بفرماید ؟

پاسخ : به کد زیر توجه کنید ،نحوه کار این است که شما یک فایل xml برای اکشن بار می سازید و بعد بوسیله کد نویسی انرا در اکتیوتی های خود فراخوانی می کنید:

فایل Main.java :

ActionBar mActionBar =getActionBar();
    mActionBar.setDisplayShowHomeEnabled(false);
    mActionBar.setDisplayShowTitleEnabled(false);
    LayoutInflater minflater = LayoutInflater.from(this);
    View mCustomView =minflater.inflate(R.layout.actionbar,null);

    TextView mtitleTextView =(TextView)mCustomView.findViewById(R.id.title_text);

    mtitleTextView.setText("ساخت اکشن بار ");

    ImageView home=(ImageView)mCustomView.findViewById(R.id.home);
    ImageView help=(ImageView)mCustomView.findViewById(R.id.help);
    ImageView back=(ImageView)mCustomView.findViewById(R.id.back);

    home.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            Intent home=new Intent(cc.this,Main.class);
            startActivity(home);

        }
    });
    
    help.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            Intent home=new Intent(cc.this,Main.class);
            startActivity(home);

        }
    });

    back.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

            Toast.makeText(getApplicationContext(), "برگشت به صفحه قبل", ۶۰۰۰);
        }
    });

    mActionBar.setCustomView(mCustomView);
    mActionBar.setDisplayShowCustomEnabl​ed(true);

actionbar_custom.xml :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#208CE0" >
 
<TextView
android:id="@+id/title_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:textAllCaps="true"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#fff"
android:textStyle="bold" />
 
<ImageView
    android:id="@+id/home"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:src="@drawable/home" />
 
<ImageView
    android:id="@+id/back"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:src="@drawable/back" />
 
<ImageView
    android:id="@+id/help"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_toRightOf="@+id/title_text"
    android:src="@drawable/help" />
 
<ImageView
    android:id="@+id/cc"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_toLeftOf="@+id/imageView1"
    android:src="@drawable/ss" />
 
</RelativeLayout>

 

موفق باشید.

  1. علی - 28 مارس 2016

    سلام خسته نباشید
    میشه یه مثال ساده در مورد کار با gif قرار بدید؟
    من یه پروژه دارم که عکس ها رو از هاست لود میکنه میخوام به جای نشون داده عکسی که با فرمت png براش قرار دادم یه عکس متحرک نشون داده بشه مثل یه لودینگ


همینک دیدگاه خود را برای ما بنویسید!