Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

Android ऐप में टैब लेआउट कैसे बनाएं?

परिचय

यह उदाहरण दर्शाता है कि Android ऐप में TabLayout और ViewPager का उपयोग करके टैब इंटरफेस कैसे बनाया जाए।

चरण 1: नया प्रोजेक्ट बनाएं

Android Studio में नया प्रोजेक्ट बनाएं।

चरण 2: डिजाइन लाइब्रेरी निर्भरता जोड़ें

implementation 'com.android.support:design:28.0.0'

चरण 3: लेआउट XML में TabLayout और ViewPager

res/layout/activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <android.support.design.widget.TabLayout
        android:id="@+id/tabLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#1db995">
    </android.support.design.widget.TabLayout>

    <android.support.v4.view.ViewPager
        android:id="@+id/viewPager"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/tabLayout"
        android:layout_centerInParent="true"
        android:layout_marginTop="100dp"
        tools:layout_editor_absoluteX="8dp" />

</RelativeLayout>

चरण 4: MainActivity.java में टैब सेटअप

src/MainActivity.java:

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.view.ViewPager;

public class MainActivity extends AppCompatActivity {
    TabLayout tabLayout;
    ViewPager viewPager;

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

        tabLayout = findViewById(R.id.tabLayout);
        viewPager = findViewById(R.id.viewPager);

        tabLayout.addTab(tabLayout.newTab().setText("फुटबॉल"));
        tabLayout.addTab(tabLayout.newTab().setText("क्रिकेट"));
        tabLayout.addTab(tabLayout.newTab().setText("NBA"));

        tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);

        final MyAdapter adapter = new MyAdapter(this, getSupportFragmentManager(),
                tabLayout.getTabCount());

        viewPager.setAdapter(adapter);
        viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));

        tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
            @Override
            public void onTabSelected(TabLayout.Tab tab) {
                viewPager.setCurrentItem(tab.getPosition());
            }

            @Override
            public void onTabUnselected(TabLayout.Tab tab) { }

            @Override
            public void onTabReselected(TabLayout.Tab tab) { }
        });
    }
}

चरण 5: MyAdapter.java बनाएं

import android.content.Context;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.app.FragmentManager;

class MyAdapter extends FragmentPagerAdapter {
    Context context;
    int totalTabs;

    public MyAdapter(Context c, FragmentManager fm, int totalTabs) {
        super(fm);
        context = c;
        this.totalTabs = totalTabs;
    }

    @Override
    public Fragment getItem(int position) {
        switch (position) {
            case 0:
                return new Football();
            case 1:
                return new Cricket();
            case 2:
                return new NBA();
            default:
                return null;
        }
    }

    @Override
    public int getCount() {
        return totalTabs;
    }
}

चरण 6: फ्रैगमेंट और लेआउट बनाएं

प्रोजेक्ट पर राइट-क्लिक करें → New → Fragment → Blank

a) Football.java

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

public class Football extends Fragment {
    public Football() { }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_football, container, false);
    }
}

fragment_football.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".Football">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:textAlignment="center"
        android:text="फुटबॉल फ्रैगमेंट"
        android:textSize="16sp"
        android:textStyle="bold"/>

</FrameLayout>

b) Cricket.java

public class Cricket extends Fragment {
    public Cricket() { }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_cricket, container, false);
    }
}

fragment_cricket.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".Cricket">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:textAlignment="center"
        android:text="क्रिकेट फ्रैगमेंट"
        android:textSize="16sp"
        android:textStyle="bold"/>

</FrameLayout>

c) NBA.java

public class NBA extends Fragment {
    public NBA() { }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        return inflater.inflate(R.layout.fragment_nba, container, false);
    }
}

fragment_nba.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".NBA">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:textAlignment="center"
        android:text="NBA फ्रैगमेंट"
        android:textSize="16sp"
        android:textStyle="bold"/>

</FrameLayout>

चरण 7: AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="app.com.sample">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>

ऐप चलाएं

ऐप चलाने पर तीन टैब (फुटबॉल, क्रिकेट, NBA) दिखाई देंगे, जिनके बीच स्वाइप करके नेविगेट किया जा सकता है।

Android ऐप में टैब लेआउट कैसे बनाएं? Android ऐप में टैब लेआउट कैसे बनाएं? Android ऐप में टैब लेआउट कैसे बनाएं?

  1. Android ऐप में मल्टी-लेवल ExpandableListView कैसे बनाएं? Android ऐप में मल्टी-लेवल ExpandableListView कैसे बनाएं?

    परिचय यह ट्यूटोरियल दर्शाता है कि Android में ExpandableListView का उपयोग करके दो-स्तरीय (ग्रुप → चाइल्ड) सूची कैसे बनाएं। हम खेल श्रेणियों (क्रिकेट, फुटबॉल, टेनिस) और उनके खिलाड़ियों का उदाहरण बनाएंगे। आवश्यक चरण चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project से नया प्रोजेक्ट बन

  1. Android ऐप में XML फ़ाइल से एनिमेशन कैसे बनाएं? Android ऐप में XML फ़ाइल से एनिमेशन कैसे बनाएं?

    परिचय यह ट्यूटोरियल दिखाता है कि Android में XML फाइलों से एनिमेशन कैसे परिभाषित करें और उन्हें व्यूज़ पर लागू करें। हम तीन प्रकार की एनिमेशन बनाएंगे: फेड-इन (अल्फा), जूम (स्केल), और ब्लिंक (रिपीटिंग अल्फा)। आवश्यक चरण चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project से नया प्रोजेक

  1. किसी भी Android ऐप के लिए होमस्क्रीन शॉर्टकट कैसे बनाएं किसी भी Android ऐप के लिए होमस्क्रीन शॉर्टकट कैसे बनाएं

    <हम में से अधिकांश जानते हैं कि हमारे फोन पर पहले से मौजूद ऐप्स के लिए होमस्क्रीन शॉर्टकट कैसे जोड़ें - बस ऐप ड्रॉअर खोलें, ऐप आइकन पर तब तक दबाए रखें जब तक आप उसे पकड़ न लें, फिर इसे अपनी पसंद की होमस्क्रीन पर खींचें। लेकिन हो सकता है आप विशिष्ट फ़ोल्डर्स, वेब पेज, या अपने संपूर्ण बुकमार्क संग्रह