How To Make Floating Action Button (FAB) - Material Design Tutorial

14:06 108 Comments

In this tutorial, we are going to learn how to implement the Floating Action Button (a.k.a FAB) which is one of the newest component brought into android with the introduction of material design. Floating Action Button is the button which prompts the main task of your application and is not compulsory to add FAB to your app if you want to avoid the FAB you are free to do that as well, FAB as said earlier is used to access the main task of the app for example a video player app will use FAB to play the videos, Social network app will use the FAB to post status, photos etc. With all that explained let's begin the tutorial.

Prerequisites


To Demonstrate how to make the Floating Action Button, I would be using the Toolbar project I made previously, you can check the Toolbar project here. If you are already aware of building toolbar then you can directly jump into the project.

To implement the Floating Action Button (FAB) from scratch we would be building a custom drawable, it is required that you understand how drawable works in android, especially layer-list. If you are not familiar with drawables don't worry I would be explaining as much as I can.

Requirments

Android Studio 1.0.1 (Version I am using)

Icon for the FAB

That's it, noting else.


Let's Understand How the Floating Action Button (FAB) Can Be Implemented




I would be showing you two ways of building Floating Action Button.

1. Building FAB from scratch with custom drawable.

2. Building FAB from available libraries and best FAB libraries.  (Coming soon)

Using libraries is the simplest way and as you are always going to need the FAB from now on you should probably get familiar with one of the library and start implementing FAB with it. 

But sometimes when you have very specific need and you need complete control over your FAB then you have to build it from scratch.


Building Floating Action Button From Scratch with custom drawables.

So for making a custom FAB follow the steps as shown below. after you complete the following steps your result would look something like this. 



Step 1. Start android studio, create a new blank project. Now before we do anything we need to first make custom circle shape drawable. to do that, go to  res ->  drawable right-click and create a new drawable resource and name it circle.xml. Now in the newly created file add the following code.
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:top="8px">
        <layer-list>
            <item>
                <shape android:shape="oval">
                    <solid android:color="#08000000"/>
                    <padding
                        android:bottom="3px"
                        android:left="3px"
                        android:right="3px"
                        android:top="3px"
                        />
                </shape>
            </item>
            <item>
                <shape android:shape="oval">
                    <solid android:color="#09000000"/>
                    <padding
                        android:bottom="2px"
                        android:left="2px"
                        android:right="2px"
                        android:top="2px"
                        />
                </shape>
            </item>
            <item>
                <shape android:shape="oval">
                    <solid android:color="#10000000"/>
                    <padding
                        android:bottom="2px"
                        android:left="2px"
                        android:right="2px"
                        android:top="2px"
                        />
                </shape>
            </item>
            <item>
                <shape android:shape="oval">
                    <solid android:color="#11000000"/>
                    <padding
                        android:bottom="1px"
                        android:left="1px"
                        android:right="1px"
                        android:top="1px"
                        />
                </shape>
            </item>
            <item>
                <shape android:shape="oval">
                    <solid android:color="#12000000"/>
                    <padding
                        android:bottom="1px"
                        android:left="1px"
                        android:right="1px"
                        android:top="1px"
                        />
                </shape>
            </item>
            <item>
                <shape android:shape="oval">
                    <solid android:color="#13000000"/>
                    <padding
                        android:bottom="1px"
                        android:left="1px"
                        android:right="1px"
                        android:top="1px"
                        />
                </shape>
            </item>
            <item>
                <shape android:shape="oval">
                    <solid android:color="#14000000"/>
                    <padding
                        android:bottom="1px"
                        android:left="1px"
                        android:right="1px"
                        android:top="1px"
                        />
                </shape>
            </item>
            <item>
                <shape android:shape="oval">
                    <solid android:color="#15000000"/>
                    <padding
                        android:bottom="1px"
                        android:left="1px"
                        android:right="1px"
                        android:top="1px"
                        />
                </shape>
            </item>

        </layer-list>
    </item>

    <item >

        <ripple xmlns:android="http://schemas.android.com/apk/res/android"
            android:color="?android:colorControlHighlight">
            <item android:id="@android:id/mask">
                <shape android:shape="oval">
                    <solid android:color="#FFBB00" />
                </shape>
            </item>
            <item>
                <shape android:shape="oval">

                    <solid android:color="@color/ColorPrimary" />


                </shape>
            </item>
        </ripple>

    </item>


</layer-list>

Now what we have done in the above xml drawable is we have created structure like this.

<layer-list>
      <Item>
                <layer-list>
                 
                 <item> (Layer of shadow)
                 <item>
                 <item>
                 <item>
                   .....
                </layer-list>
       </Item>
       
         <Item>
         
                 <shape> (Oval shape)
                 </shape>

       </Item>

<layer-list>






we have created the drawable by defining layers the root layer consists of 2 items

1. layers of shadows
2. circular shape;

You must notice that the circular shape is enclosed in a ripple tag this tag ensures the circle reacts to on touch with the ripple effect on lollipop devices.

Now if you set the circle.xml as background of any view it will form a cirlce. we are going to use this circle as background to image-button view.

Step 2. Now go to res -> layout right-click and select create a new layout resource, name it tool_bar.xml and the add the following code to that file. (Everything about toolbar is explained in my previous posts )

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

<android.support.v7.widget.Toolbar
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:elevation="2dp"
    android:theme="@style/Base.ThemeOverlay.AppCompat.Dark"
    android:background="@color/ColorPrimary"
    xmlns:android="http://schemas.android.com/apk/res/android" />

Step 3. Now go to res -> values create a new resource file name it colors.xml and add the following code.
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="ColorPrimary">#FF5722</color>
    <color name="ColorPrimaryDark">#E64A19</color>
</resources>

Everything about colors is explained in previous posts, make sure you go through it if you dont understand.

Step 4. Now go to activity_main.xml and add the following code to it. also make sure you add the icon which you want to show inside your FAB to your project. I have downloaded the icon from www.icons4android.com and named it ic_action, and added it to the drawables folder of the project
<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"
    tools:context=".MainActivity">

    <include
        android:id="@+id/toolbar"
        layout="@layout/tool_bar"

        ></include>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:id="@+id/frameLayout">

        <TextView
            android:id="@+id/TextAct1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_centerVertical="true"
            android:layout_gravity="center"
            android:text="This is the first Activity, Say Hi"
            android:textSize="25dp" />

        <ImageButton
            android:layout_margin="15dp"
            android:layout_width="70dp"
            android:layout_height="70dp"
            android:src="@drawable/ic_action"
            android:background="@drawable/circle"
            android:id="@+id/imageButton"
            android:layout_gravity="right|bottom" />


    </FrameLayout>
</RelativeLayout>

The structure of activiy_main.xml is pretty self explanatory. There is a FrameLayout inside a RelativeLayout, also inside the frame layout I have added a Text View and an ImageButton. Notice that the background of imageButton is set to "@drawable/circle", width and height of the imageButton is same to make it form into a circle and src of imageButton is set to "@drawable/ic_action" which the icon I have downloaded and added to my project.

Step 5. Now go to your MainActivity.java and add the following code to it.

package com.example.hp1.floatingactionbuttonfab;

import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ImageButton;
import android.widget.Toast;


public class MainActivity extends ActionBarActivity {

    Toolbar toolbar;
    ImageButton FAB;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        FAB = (ImageButton) findViewById(R.id.imageButton);
        FAB.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                
                Toast.makeText(MainActivity.this,"Hello Worl",Toast.LENGTH_SHORT).show();
                

            }
        });
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }
}




So If you run your app at this stage you would get something like this.



Pretty good, When you click on the FAB a toast message appears saying "Hello World". But we want some action to be performed when the user clicks the Floating Action Button, just to keep the tutorial simple I am going to start a new activity when the FAB is clicked. So let's start with that now.

Step 6. Go to java -> [package-name]  right-click and select new -> activity -> blank activity give your activity name as SecondActivity and layout name as activity_second.xml. now go to activity_second.xml and add the following code to it.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >


    <include
        android:id="@+id/toolbar"
        layout="@layout/tool_bar"

        ></include>

    <LinearLayout
        android:layout_below="@id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <TextView
            android:layout_marginTop="10dp"
            android:textColor="#000000"
            android:textSize="25dp"
            android:layout_width="242dp"
            android:layout_height="wrap_content"
            android:text="Enter Your Details"
            android:id="@+id/details"
            android:layout_gravity="center_horizontal" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="30dp"
            android:text="Name"
            android:layout_marginLeft="100dp"
            android:id="@+id/Name"
           android:textSize="20dp"
             />

        <EditText
            android:layout_marginLeft="100dp"

            android:layout_marginTop="5dp"
        android:layout_height="25dp"
            android:layout_width="150dp"
        android:id="@+id/editname" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="30dp"
            android:text="Address"
            android:layout_marginLeft="100dp"
            android:id="@+id/Address"
            android:textSize="20dp"
            />

        <EditText
            android:layout_marginLeft="100dp"

            android:layout_marginTop="5dp"
            android:layout_height="25dp"
            android:layout_width="150dp"
            android:id="@+id/editadd" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="30dp"
            android:text="Phone "
            android:layout_marginLeft="100dp"
            android:id="@+id/phone"
            android:textSize="20dp"
            />

        <EditText
            android:layout_marginLeft="100dp"

            android:layout_marginTop="5dp"
            android:layout_height="25dp"
            android:layout_width="150dp"
            android:id="@+id/editphone" />

        <Button
            android:layout_marginLeft="130dp"
            android:layout_marginTop="10dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Save"
            android:id="@+id/save" />

    </LinearLayout>
</RelativeLayout>

Now for the purose of the tutorial I have added some random text and edit boxes to the second activity. I have also included a toolbar in this activity as well

Step 7. Go to SecondActivity.java and add the following code to it.
package com.example.hp1.floatingactionbuttonfab;

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;


public class SecondActivity extends ActionBarActivity {

    Toolbar toolbar;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);

        toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_second, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }
}
Nothing much happening here, just initializing the toolbar for the second activity.

Step 8. Now just go to the MainActivity and replace the Code where we made the toast saying "hello world" on click of Floating Action button to the code as shown below.
 

package com.example.hp1.floatingactionbuttonfab;

import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ImageButton;


public class MainActivity extends ActionBarActivity {

    Toolbar toolbar;
    ImageButton FAB;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        FAB = (ImageButton) findViewById(R.id.imageButton);
        FAB.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                Intent i = new Intent(MainActivity.this,SecondActivity.class);
                startActivity(i);



            }
        });
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }
}


As you can see we have added a intetnt to start the new activity, now when you run the app you would get results as you had seen at the start of this tutorial



Thats it, Thats how you implement the FAB with custom drwable.  In the next post I would be providing you with the best Floating Action Button ( FAB ) libraries which you could use in your next project also I have recieved requests from visitors asking for the downloadable projects so starting from this tutorial I am also providing you with downloadable project. if you like this post please comment, subscribe and share

To Download The Project - Click Here


Akash Bangad

Computer Engineer from Maharashtra,India. Trying to make my way in the world of mobile development. Steve Jobs admirer and techy at heart.

108 comments:

  1. Replies
    1. #HowTo #Implement #Android #MaterialSheet #FAB?
      Android Material Sheet FAB #Library that implements the #floating #actionbutton to sheet transition from #Google’s #Material #Design #documentation.
      http://www.tellmehow.co/implement-android-material-sheet-fab/

      Delete
  2. You're so much awesome, all I know about Android was reading you, thank you!! You can do a cardview/restful tutorial? I read that but can't learn yet. So much thank you.

    PD: Sorry by my english, I from Venezuela :)

    ReplyDelete
  3. It says cannot reslove symbol FAB how can I fix it?

    ReplyDelete
    Replies
    1. You have to defined FAB with ImageButton:)

      Delete
  4. Good article and the author using the different information in this post but it is not boring. They did not use worthless information and also use the good language. I wrote the article with the help of a custom essay writing service . I will share this link to my friends. I got different information from this post.

    ReplyDelete
  5. ive followed you code and the fab is working properly.
    bt the problem comes in when i try to use the fab and the sliding navigation drawer together... cant they exist together or is it me making a mistake..?

    ReplyDelete
    Replies
    1. App is installed in my android mobile but it says unfortunately fab(my project name)has stopped working

      Delete
  6. Thank you for publishing this technical tutorial. Now most of the developers can easily make floating action button. Keep sharing this type of informative post, it will help the developers.
    event management apps firm

    ReplyDelete
  7. do yo know how to create a FAB and when you tap that FAB it displays other FAB with more actions? Like on Hangouts 4.0?

    ReplyDelete
  8. Helpful tutorial to implement or make awesome floating menu in android app using android studio.

    ReplyDelete
  9. If you're looking for a simpler floating action button example with source code to download then visit http://www.ahotbrew.com/android-floating-action-button/

    ReplyDelete
  10. Gave me error on line , setSupportActionBar(toolbar);

    But still worked for me after adding following code in same class , ,

    public void setSupportActionBar(Toolbar supportActionBar) {
    this.supportActionBar = supportActionBar;
    }

    ReplyDelete
  11. How can i add a menu with this floating button?

    ReplyDelete
  12. How can i add a menu with this floating button?

    ReplyDelete
  13. This comment has been removed by the author.

    ReplyDelete
  14. Your phone is a basic hardware device that requires the right applications to accentuate its performance and provide you variable features. It is worthless without the amazing applications that hit the market with alacrity. These applications are beneficial because they help in realizing every other need than making simple calls. So you can download an office assistant feature and it will provide you the schedule for important meetings or you could download your favorite racing car game and enjoy it while on your way to office. appnana apk hack

    ReplyDelete
  15. Unbelieveable that this text is nr 1 on Google, although it is completely off topic. There is a class for that :
    > android.support.design.widget.FloatingActionButton
    Use it.
    Stop hacking stuff, that has already been given to society
    What you are doing is just creating an Imagebutton very complicated that LOOKS like an Android FAB.

    ReplyDelete
  16. Actually didn't work for me at all. And I couldn't figure out how to make it work after hours of trying. I'm not developing a Lollipop app and this is Lollipop dependent. Thanks, but this didn't help me any. And -1 point for using xml drawables.

    ReplyDelete
  17. Actually didn't work for me at all. And I couldn't figure out how to make it work after hours of trying. I'm not developing a Lollipop app and this is Lollipop dependent. Thanks, but this didn't help me any. And -1 point for using xml drawables.

    ReplyDelete
  18. Great post! I was just looking for this information! The given information is very understandable! Keep posting your articles! Essay Writer

    ReplyDelete
  19. Informative article. thanks for posting.awriter.org

    ReplyDelete
  20. You'll only get the up-dates from the people who you are following and the particular person won't receive any update of yours. ordering facebook followers

    ReplyDelete
  21. احصلوا على خدمات صيانه متنوعه من خلال مركز صيانة كاريير المتخصص في صيانة جميع الاجهزه الكهربائية , لمزيد من المعلومات زوروا موقعنا الان .
    http://carriermaintenance.com/

    ReplyDelete
  22. احصلوا على العديد من الخدمات من خلال شركة تنظيف خزانات بمكة التى تقوم بتنظيف الخزانات بأقل التكاليف . ادخلوا على هذا الرابط .

    0555705619

    http://www.el3nod.com/1/company-tanks-isolation-cleaning-mecca

    ReplyDelete
  23. يوجد العديد من الخدمات داخل شركة تخزين اثاث بالرياض التى توفرها لكم مؤسسة العنود , لمزيد من المعلومات زوروا موقعنا الان .


    0550074416

    http://goo.gl/0qdD5Q

    ReplyDelete
  24. Hi! Thank you for the very interesting tutorial! One question regarding the button: looks like the background of the button is drawn over and over again every time you reload the activity. Could you kindly check whether you have same problem? Thanks a lot again! Dana

    ReplyDelete
  25. It provides a clear idea about the Floating Action Button and how to use this button in material design. My recently published article in best essay writing service discusses the newly added features in Android.

    ReplyDelete
  26. fragment design and Dai Ando Mohair Sweaters Harness the Punk Rock Spirit buy urgent essays

    ReplyDelete
  27. This comment has been removed by a blog administrator.

    ReplyDelete
  28. This comment has been removed by a blog administrator.

    ReplyDelete
  29. This comment has been removed by the author.

    ReplyDelete
  30. Thank you for sharing valuable information. Nice post. I enjoyed reading this post.

    monkey go happy | mahjong online| superfighters 2 |yahtzee with buddies

    ReplyDelete
  31. Great piece of information! Thanks a lot for sharing it! assignment helper

    ReplyDelete
  32. how to increase the size of icon inside floating action button ????????
    I'm trying to put plus icon inside floating action button. I have tried with 48dp, 72dp, 96dp icons, but still the icon is looking too small.

    ReplyDelete
  33. Thanks for the best blog.it was very useful for me.keep sharing such ideas in the future as well.this was actually what i was looking for,and i am glad to came here!
    five nights at freddy's 3 | five nights at freddy's 2 | fireboy and watergirl 3 | 2048 game online | duck life 3 | fireboy and watergirl 6

    ReplyDelete
  34. Great article. Thanks for sharing such a informative post.

    php training in chennai

    ReplyDelete
  35. E-mail with many attractive features and convenience are the choice of most people around the world open. And I want to share to everyone a free webmail services
    outlook entrar , entrar no outlook , entrar outlook

    ReplyDelete
  36. It's the choice of anybody whom you might be following to give the authorization to followers, so that you can comment as well as like on the activities made by them. It all entirely depends on the particular person. buy followers for facebook

    ReplyDelete

  37. I would like more information about this, because it is very nice. Thanks for sharing. Game return man 2 play the football game for free. The game return man 3 you like it? I like play game as Stick RPG and game Potty Racers 3

    ReplyDelete
  38. تواصل معنا عزيزى العميل بصوره دائمة فعند الحاجه الى اصلاح الاجهزهة الكهربائيه الخاصه بك يمكنك التواصل معنا عن طريق رقم صيانة فريجيدير يصلك مندوبنا فى خلال دقائق
    https://www.almyaa.com/Frigidaire-Maintenance/

    ReplyDelete

  39. تقدم دار مسنين بمدينة نصر العديد من الخدمات الى يحتاج اليها كبار السن فى هذة المرحله فدار مسنين بالمعادى جاهزة تماما بكل المعدات او الادوات التى يحتاجون اليها فى كل المجالات زور اقرب فرع اليك فلدينا ايضا دار مسنين بمصر الجديدة يمكن ان تزورنا فى اى وقت
    http://www.careolder.com/%D8%AF%D8%A7%D8%B1-%D9%85%D8%B3%D9%86%D9%8A%D9%86-%D9%85%D8%B5%D8%B1-%D8%A7%D9%84%D8%AC%D8%AF%D9%8A%D8%AF%D8%A9-%D9%85%D8%AF%D9%8A%D9%86%D8%A9-%D9%86%D8%B5%D8%B1-%D9%85%D8%B9%D8%A7%D8%AF%D9%8A/

    ReplyDelete
  40. I didn't find it interesting initially but as I kept on reading I found it quite amazing. I have a few questions from the author if any one can tell me how to contact the author?

    researchpaperspot online

    ReplyDelete
  41. افضل فريق عمل مكون من اسطول كبير من السيارات والادوات الخاصه باعمال الصيانة من صيانه يونيفرسال الان يمكنك التواصل معه وطلب خدمات الصيانة في اي وقت وباي مكان في مصر
    https://www.almyaa.com/Universal-Maintenance/

    ReplyDelete
  42. افضل فريق عمل متخصص من صيانة جنرال اليكتريك يمكنك التواصل معه في اي وقت واي مكان في مصر بالاضافه الي خدمات صيانة فريجيدير المتخصص في اعمال المتميزه

    ReplyDelete
  43. يمكنك التواصل مع فريق عمل صيانه يونيون اير التي تتميز بالخبرة والكفائه في العمل بالاضافه الي اعمال الصيانة الفورية التي تتم تحت اشراف الخبراء .
    http://www.unionairemaintenance.com

    ReplyDelete
  44. احصل علي افضل الخدمات عند التواصل مع صيانة يونيفرسال التي تعمل باحدث اساليب الصيانة وباقل الاسعار بالاضافه الي اعمال صيانة فريش التي تتم علي ايدي الخبراء .

    ReplyDelete
  45. الان من خلال اكبر شركة سفلته طرق في جميع انحاء المملكة العربية السعودية نقوم بأفضل سفلته للطرق علي اعلي مستوي من خلال افضل عماله سفلته لدينا علي اعلي مستوي والتي تقوم بعملها علي اكمل وجة في سفلته الطرق والامكن العامة والخاصه.

    ReplyDelete
  46. توكيلات وعربات صيانة يونيون اير والتي تصل الي جميع انحاء جمهورة مصر العربية علي اعلي مستوي لتصليح الاجهزة الكهربائية وصيانتها في جميع الاوقات والاماكن داخل مصر في اي وقت واي مكان.

    ReplyDelete
  47. اذا كنت تريد شراء اجهزة منزليه مضمونه وعلي اعلي مستوي نفضل بزياره توكيل صيانة وستنجهاوس للحصول علي نصائح متعلقه بكيفيه شراء الاجهزة الكهربائية وكيفيه الاستفادة من الاجهزة لاطول فتره ممكنة ونحن لدينا في صيانة وايت ويل افضل فريق خدمة عملاء مدرب علي الرد علي جميع اسفساراتكم من خلال اي رقم داخل مصر.

    ReplyDelete
  48. الشركة الفرنسية اكبر شركات ابادة الحشرات في مصر تقوم بالقضاء علي الحشرات الضاره والفئران في المنازل والجناين والمطاعم وغيرها من الاماكن علي اعلي مستوي من خلالنا فقط في جميع انحاء مصر فنحن متخصصين في مكافحة الحشرات في جميع انحاء مصر.

    ReplyDelete
  49. الان من خلال توكيل صيانة وستنجهاوس الافضل في جميع انحاء جمهورية مصر العربية والتي يعمل بها افضل خبرات في تصليحات الاجهزة الكهربائية باختللاف اصداراتها واشكالها المختفله في الاسواق المصريه.

    ReplyDelete
  50. الان من خلال افضل شركة امن وحراسة وهي شركة الحارس الخاص والتي توفر لكم افضل افراد الامن لتأمين شركاتكم واشخاصكم في جميع انحاء مصر تواصلوا فقط الان مع افضل شركة حراسات امنية في مصر شركة الحارس الخاص.

    ReplyDelete
  51. Interesting article! Thank you for sharing them! I hope you will continue to have similar posts to share with everyone!
    fb login

    ReplyDelete
  52. I am sure that the informative you shared througheful for my future. keep sharing. A good blog.
    wings.io | super mechs 2 | wingsio | supermechs

    ReplyDelete
  53. This is such a great resource that you are providing and you give it away for free. I love seeing blog that understand the value of providing a quality resource for free.
    dissertation Writing Service

    ReplyDelete
  54. Thank you for taking the time and sharing this information with us. It was indeed very helpful and insightful while being straight forward and to the point.
    http://www.mcdonaldsgutscheine.net | http://www.Startlr.com | http://www.SaludLimpia.com

    ReplyDelete
  55. To acquire a greater exposure to your facebook account, Folks expend cash to Buy Facebook Followers to easily get exposure online. ordering facebook followers

    ReplyDelete
  56. Ever you heard about Friv School 4 which is a term known as Friv4school. There are many other gaming sites like Cooler Math Games and many other but you can free visit knowledgeadventure.com and pbskids.org gaming sites.

    ReplyDelete
  57. Buy YouTube Views. It is the newest approach for boosting your Google authority. To find out more keep reading this blog. buy youtube views cheap

    ReplyDelete
  58. Are you presently hunting for genuine YouTube subscribers? Forget your headaches, we shall diligently help you to buy youtube subscribers

    ReplyDelete
  59. I used same code, But shadow not showing properly only in lollipop devices ?

    ReplyDelete
  60. Other android versions . https://www.dropbox.com/s/cl02wfrrmxyq68p/screenshot--2017-12-04-15-14-28.png?dl=0
    Lollipop devices https://www.dropbox.com/s/bhmwl7f5gaqjojw/screenshot--2017-12-04-15-16-55.png?dl=0
    Anyone have an idea?

    ReplyDelete
  61. اذا اردت ان تسأل عن افضل شركة نقل عفش جدة فاسألنا نحن شركة عباد الرحمن
    فلو فكرت فى نقل اثاث منزلك من منزل لاخر
    نقل عفش جدة
    افضل شركات نقل العفش بجدة
    اسعار شركات نقل العفش بجدة
    دليل شركات نقل العفش بجدة
    ارخص شركات نقل العفش بجدة
    نقل عفش جدة
    افضل شركات نقل العفش بجدة
    اسعار شركات نقل العفش بجدة
    دليل شركات نقل العفش بجدة
    ارخص شركات نقل العفش بجدة

    فنقل العفش هو الشيئ الوحيد الذي لا يمكن التهاون فية أطلاقاً بمعني أنة لابد من أن تتم عملية نقل الأثاث بحرفية شديدة توثيق كامل لكل ما يحدث أثناء سير العملية حتي يتم المحافظة بالكامل علي أي محتويات خشبية أو زجاجية فالكثير من التلفيات التي تحدث ربما يكون الزجاج والأخشاب الخفيفة هي المتضررة من ذلك لسهولة كسرها بسبب الصدمات التي تحدث أثناء العمال بتنزيل العفش من المنزل أو التي قد تحدث بسبب مطبات الطريق اثناء السير والاتجاه إلي المنزل المراد تركيب الاثاث داخلة.

    ReplyDelete

  62. I’m glad you enjoyed it. Those are great habits! Thank you for sharing.

    http://word-cookies-answers.com

    ReplyDelete
  63. Much obliged to you for taking the time and offering this data to us. It was in fact exceptionally supportive and canny while being straight forward and to the point.
    Mobile App Development Karachi
    Mobile application development Pakistan

    ReplyDelete
  64. شركة نقل عفش بالمدينة المنورة نور المدينه
    نقل عفش بالمدينة المنورة
    نقل اثاث بالمدينة المنورة
    شركة نقل عفش بالمدينة المنورة
    شركة نقل اثاث بالمدينة المنورة
    شركة نقل عفش بالمدينة المنورة
    ارخص شركة نقل عفش بالمدينة المنورة
    ارخص شركة نقل اثاث بالمدينة المنورة

    ReplyDelete
  65. There is nothing free of cost on earth, but confirm that you Buy facebook reviews solitary from valid sources for successful recognition on the net. buy facebook 5 star rating

    ReplyDelete
  66. I wanted to thank you for this excellent read!! I definitely loved every little bit of it. I have you bookmarked your site to check out the new stuff you post. TutuHelper

    ReplyDelete
  67. Which are the indications of worldwide recognition of folks during this modern world? Not surprisingly, number of followers of the Twitter account is a firm indication in today. buy twitter followers

    ReplyDelete
  68. Hi, I find reading this article a joy. It is extremely helpful and interesting and very much looking forward to reading more of your work.. Download iOS 11.3

    ReplyDelete
  69. I hope these stuffs on Sites To Create Your Own Android Application for Free will help you making your own Android apps and share to your friend and entire world & most important making money through Android Apps.
    ShowBox APK

    ReplyDelete
  70. This solution is no doubt, spending plan pleasant yet really effective that you can always make use of for promoting your organization and also bringing exposure on international level. buy targeted likes

    ReplyDelete
  71. It has been primarily designed for touch-screen mobile devices such as smart phones and tablets and is being increasingly used for other high-end Android applications such as televisions, cars, games consoles, digital cameras, watches, and other electronic equipments.Custom CRM Software Development

    ReplyDelete
  72. Really cool post, highly informative and professionally written and I am glad to be a visitor of this perfect blog, thank you for this rare info!

    web designing course in chennai

    ReplyDelete
  73. This is an amazing blog, thank you so much for sharing such an informative blog. Visit for
    Offshore VPS

    ReplyDelete
  74. Very nice post with lots of information. Thanks for this updates.web design company in velachery

    ReplyDelete
  75. Here you can get the best fitness band under 5000 to get your fitness track on
    routine. Choose from wide range of variety. best fitness band india under 5000

    ReplyDelete
  76. Become a modelling star and get freelance modelling jobs, freelance acting jobs freelance dancers jobs, freelance voice over artists jobs in India. modelling jobs

    ReplyDelete
  77. Pick your favourite gifts items and make your day full of surprises. Shop and select gift items from your choice and make it worth. gifts for beer lovers

    ReplyDelete
  78. Get updated about what has been trending in India lately. Also know which memes are in high demand along with upcoming web series. trending topics in india

    ReplyDelete
  79. I love the way you write and share your niche! Very interesting and different! Keep it coming! etcsoftware

    ReplyDelete
  80. We supply turn-key solutions for your specific diamond needs, from custom made designs to delivering exemplary diamond solutions. Pear Diamond suppliers

    ReplyDelete
  81. This type of message always inspiring and I prefer to read quality content, so happy to find good place to many here in the post, the writing is just great, thanks for the post. 22bet app

    ReplyDelete
  82. I am happy to find your distinguished way of writing the post. Now you make it easy for me to understand and implement the concept. Thank you for the post. 22bet app download

    ReplyDelete