App2k
Home
Project
Android Studio
Collage Project
Home
Simple Banner View
Simple Banner View
App Developer
October 06, 2024
1. Activity (activity_main.xml)
1. Activity (mainactivity.java)
import android.os.Bundle; import android.os.Handler; import androidx.appcompat.app.AppCompatActivity; import androidx.viewpager2.widget.ViewPager2; import com.google.android.material.tabs.TabLayout; import com.google.android.material.tabs.TabLayoutMediator; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { private ViewPager2 bannerViewPager; private List
bannerItems; private TabLayout tabLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); bannerViewPager = findViewById(R.id.bannerViewPager); tabLayout = findViewById(R.id.tabLayout); // Create a list of image resource IDs bannerItems = new ArrayList<>(); bannerItems.add(R.drawable.image1); // Replace with your own image resources bannerItems.add(R.drawable.image2); bannerItems.add(R.drawable.image3); bannerItems.add(R.drawable.image3); bannerItems.add(R.drawable.image3); // Set the adapter BannerAdapter bannerAdapter = new BannerAdapter(bannerItems, this); bannerViewPager.setAdapter(bannerAdapter); // Link the TabLayout with ViewPager2 (Dots Indicator) new TabLayoutMediator(tabLayout, bannerViewPager, (tab, position) -> { // Empty callback: dots are managed automatically }).attach(); // Optional: Add auto-scroll functionality autoScrollBanner(); } private void autoScrollBanner() { Handler handler = new Handler(); Runnable runnable = new Runnable() { @Override public void run() { int currentItem = bannerViewPager.getCurrentItem(); int nextItem = currentItem + 1; if (nextItem >= bannerItems.size()) { nextItem = 0; } bannerViewPager.setCurrentItem(nextItem, true); handler.postDelayed(this, 1000); // Auto-scroll delay } }; handler.postDelayed(runnable, 1000); } } import android.os.Bundle; import android.os.Handler; import androidx.appcompat.app.AppCompatActivity; import androidx.viewpager2.widget.ViewPager2; import com.google.android.material.tabs.TabLayout; import com.google.android.material.tabs.TabLayoutMediator; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { private ViewPager2 bannerViewPager; private List
bannerItems; private TabLayout tabLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); bannerViewPager = findViewById(R.id.bannerViewPager); tabLayout = findViewById(R.id.tabLayout); // Create a list of image resource IDs bannerItems = new ArrayList<>(); bannerItems.add(R.drawable.image1); // Replace with your own image resources bannerItems.add(R.drawable.image2); bannerItems.add(R.drawable.image3); bannerItems.add(R.drawable.image3); bannerItems.add(R.drawable.image3); // Set the adapter BannerAdapter bannerAdapter = new BannerAdapter(bannerItems, this); bannerViewPager.setAdapter(bannerAdapter); // Link the TabLayout with ViewPager2 (Dots Indicator) new TabLayoutMediator(tabLayout, bannerViewPager, (tab, position) -> { // Empty callback: dots are managed automatically }).attach(); // Optional: Add auto-scroll functionality autoScrollBanner(); } private void autoScrollBanner() { Handler handler = new Handler(); Runnable runnable = new Runnable() { @Override public void run() { int currentItem = bannerViewPager.getCurrentItem(); int nextItem = currentItem + 1; if (nextItem >= bannerItems.size()) { nextItem = 0; } bannerViewPager.setCurrentItem(nextItem, true); handler.postDelayed(this, 1000); // Auto-scroll delay } }; handler.postDelayed(runnable, 1000); } }
Post a Comment
0 Comments
Social Plugin
Most Popular
Contact Us
March 03, 2025
Connect flutter app to firebase android
April 16, 2025
Create listview.builder in Flutter || Flutter Call list UI
April 11, 2025
Facebook
Tags
android studio firebase
android studio firebase realtime database
Firebase
Flutter
How to Save Data to the Firebase Realtime Database
Java
Project
Categories
Flutter
(13)
Java
(2)
Project
(1)
android studio firebase
(1)
Search This Blog
Powered by Blogger
April 2025
2
March 2025
12
February 2025
7
December 2024
2
October 2024
9
September 2024
2
Report Abuse
Contact form
0 Comments