如何设置壁纸(viewpager) [英] How to set wallpaper (viewpager)
本文介绍了如何设置壁纸(viewpager)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我要设置从viewpager(选择图像)壁纸。我有不同的pictures(R.drawable.a1,R.drawable.a2,R.drawable.a3,R.drawable.a4,R.drawable.a5,R.drawable.a6............)我该怎么办,我想是动态的,请帮帮我,谢谢
App.class;
公共类应用扩展活动实现OnPageChangeListener {
受保护的静态最终上下文的背景下= NULL;私人整数[] = ListOfID {
R.drawable.a1,R.drawable.a2,R.drawable.a3,R.drawable.a4,R.drawable.a5,R.drawable.a6,R.drawable.a7,
R.drawable.a8,R.drawable.a9,R.drawable.a10,R.drawable.a11,R.drawable.a12,R.drawable.a13,R.drawable.a14,R.drawable.a15,
R.drawable.a16,R.drawable.a17,R.drawable.a18,R.drawable.a19,R.drawable.a20};
私有静态最终诠释计数= 22;
//私人AdController myController的;
查看查看= NULL;
整数imageId;
最终活动的行为=这一点;
私人INT indexOfImage = 0;
公众的LinearLayout布局;公共无效的onCreate(捆绑savedInstanceState)
{
super.onCreate(savedInstanceState);
的setContentView(R.layout.main); MyPagerAdapter适配器=新MyPagerAdapter();
最后ViewPager myPager =(ViewPager)findViewById(R.id.myfivepanelpager);
myPager.setAdapter(适配器);
myPager.setCurrentItem(12);
myPager.setOnPageChangeListener(本); 按钮旁边=(按钮)findViewById(R.id.buttonnext);
next.setOnClickListener(新View.OnClickListener(){ 公共无效的onClick(视图v){
myPager.setCurrentItem(myPager.getCurrentItem()+ 1);
}
}); 按钮previous =(按钮)findViewById(R.id.button previous);
previous.setOnClickListener(新View.OnClickListener(){ 公共无效的onClick(视图v){
myPager.setCurrentItem(myPager.getCurrentItem() - 1);
}
}); 按钮duvarbtn =(按钮)findViewById(R.id.button1);
duvarbtn.setOnClickListener(新View.OnClickListener(){
INT ID = ListOfID [indexOfImage]
公共无效的onClick(视图v){ WallpaperManager myWallpaperManager
= WallpaperManager.getInstance(getApplicationContext());
尝试{
myWallpaperManager.setResource(ID);
}赶上(IOException异常五){
// TODO自动生成catch块
e.printStackTrace();
}
}
});
}公共无效onPageScrollStateChanged(INT为arg0){
// TODO自动生成方法存根}公共无效onPageScrolled(INT位置,浮ARG1,ARG2 INT){
// TODO自动生成方法存根 }公共无效使用onPageSelected(INT位置){
// TODO自动生成方法存根 indexOfImage =位置;
开关(位置){
案件0://
第一页(位置);
indexOfImage =位置;
打破;
情况1:
indexOfImage =位置;
打破;
案例2:
indexOfImage =位置;
打破;
案例3:
indexOfImage =位置;
打破;
情况4:
indexOfImage =位置;
打破;
情况5:
indexOfImage =位置;
打破;
情况6:
indexOfImage =位置;
打破;
案例7:
indexOfImage =位置;
打破;
案例8:
indexOfImage =位置;
打破;
案例9:
indexOfImage =位置;
打破;
案例10:
indexOfImage =位置;
打破;
案例11:
indexOfImage =位置;
打破;
案例12:
indexOfImage =位置;
打破;
案例13:
indexOfImage =位置;
打破;
案例14:
indexOfImage =位置;
打破;
案例15:
indexOfImage =位置;
打破;
案例16:
indexOfImage =位置;
打破;
案例17:
indexOfImage =位置;
打破;
案例18:
indexOfImage =位置;
打破;
案例19:
indexOfImage =位置;
打破;
案例20:
indexOfImage =位置;
打破;
案例21:
第一页(位置);
indexOfImage =位置;
打破;
}}公共无效第一页(INT位置){
// TODO自动生成方法存根
ViewPager myPager =(ViewPager)findViewById(R.id.myfivepanelpager);
INT = PAGECOUNT的getCount();
如果(位置== 0){
//
myPager.setCurrentItem(页页次-2,假);
}否则如果(位置==页页次-1){
// ViewPager myPager =(ViewPager)findViewById(R.id.myfivepanelpager);
myPager.setCurrentItem(1,FALSE);
}
}
私人诠释getCount将(){
// TODO自动生成方法存根
返回计数;
}
公共无效的onClick(视图v){
// TODO自动生成方法存根
//过滤器f =(过滤器)v.getTag();
// MyPagerAdapter.show(这一点,输入,F);
}
公共无效的onDestroy()
{
super.onDestroy();
}
}
解决方案
pager.setOnPageChangeListener(新MyPageChangeListener());
私人INT indexOfImage = 0;
私有类MyPageChangeListener扩展ViewPager.SimpleOnPageChangeListener {
@覆盖
公共无效使用onPageSelected(INT位置){
indexOfImage =位置;
}
}
设置为墙纸
INT ID = ListOfID [indexOfImage]
WallpaperManager myWallpaperManager
= WallpaperManager.getInstance(getApplicationContext());
myWallpaperManager.setResource(ID);
I want to set wallpaper from viewpager(selected image). I have different pictures(R.drawable.a1,R.drawable.a2,R.drawable.a3,R.drawable.a4,R.drawable.a5,R.drawable.a6............) How can I do, I want to be dynamic,please help me, thanks
App.class;
public class App extends Activity implements OnPageChangeListener {
protected static final Context Context = null;
private Integer[] ListOfID = {
R.drawable.a1, R.drawable.a2, R.drawable.a3, R.drawable.a4, R.drawable.a5, R.drawable.a6, R.drawable.a7,
R.drawable.a8, R.drawable.a9, R.drawable.a10, R.drawable.a11, R.drawable.a12, R.drawable.a13, R.drawable.a14, R.drawable.a15,
R.drawable.a16, R.drawable.a17, R.drawable.a18, R.drawable.a19, R.drawable.a20};
private static final int count = 22;
//private AdController myController;
View view=null;
Integer imageId;
final Activity act = this;
private int indexOfImage = 0;
public LinearLayout layout;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MyPagerAdapter adapter = new MyPagerAdapter();
final ViewPager myPager = (ViewPager) findViewById(R.id.myfivepanelpager);
myPager.setAdapter(adapter);
myPager.setCurrentItem(12);
myPager.setOnPageChangeListener(this);
Button next = (Button) findViewById(R.id.buttonnext);
next.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
myPager.setCurrentItem(myPager.getCurrentItem()+1);
}
});
Button previous = (Button) findViewById(R.id.buttonprevious);
previous.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
myPager.setCurrentItem(myPager.getCurrentItem()-1);
}
});
Button duvarbtn = (Button) findViewById(R.id.button1);
duvarbtn.setOnClickListener(new View.OnClickListener(){
int id=ListOfID[indexOfImage];
public void onClick(View v) {
WallpaperManager myWallpaperManager
= WallpaperManager.getInstance(getApplicationContext());
try {
myWallpaperManager.setResource(id);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
public void onPageScrolled(int position, float arg1, int arg2) {
// TODO Auto-generated method stub
}
public void onPageSelected(int position) {
// TODO Auto-generated method stub
indexOfImage = position;
switch (position) {
case 0://
firstpage(position);
indexOfImage = position;
break;
case 1:
indexOfImage = position;
break;
case 2:
indexOfImage = position;
break;
case 3:
indexOfImage = position;
break;
case 4:
indexOfImage = position;
break;
case 5:
indexOfImage = position;
break;
case 6:
indexOfImage = position;
break;
case 7:
indexOfImage = position;
break;
case 8:
indexOfImage = position;
break;
case 9:
indexOfImage = position;
break;
case 10:
indexOfImage = position;
break;
case 11:
indexOfImage = position;
break;
case 12:
indexOfImage = position;
break;
case 13:
indexOfImage = position;
break;
case 14:
indexOfImage = position;
break;
case 15:
indexOfImage = position;
break;
case 16:
indexOfImage = position;
break;
case 17:
indexOfImage = position;
break;
case 18:
indexOfImage = position;
break;
case 19:
indexOfImage = position;
break;
case 20:
indexOfImage = position;
break;
case 21:
firstpage(position);
indexOfImage = position;
break;
}
}
public void firstpage(int position) {
// TODO Auto-generated method stub
ViewPager myPager = (ViewPager) findViewById(R.id.myfivepanelpager);
int pageCount = getCount();
if (position == 0){
//
myPager.setCurrentItem(pageCount-2,false);
} else if (position == pageCount-1){
//ViewPager myPager = (ViewPager) findViewById(R.id.myfivepanelpager);
myPager.setCurrentItem(1,false);
}
}
private int getCount() {
// TODO Auto-generated method stub
return count;
}
public void onClick(View v) {
// TODO Auto-generated method stub
//Filter f = (Filter) v.getTag();
// MyPagerAdapter.show(this, input, f);
}
public void onDestroy()
{
super.onDestroy();
}
}
解决方案
pager.setOnPageChangeListener(new MyPageChangeListener());
private int indexOfImage = 0;
private class MyPageChangeListener extends ViewPager.SimpleOnPageChangeListener {
@Override
public void onPageSelected(int position) {
indexOfImage = position;
}
}
Setting it as wallpaper
int id=ListOfID[indexOfImage];
WallpaperManager myWallpaperManager
= WallpaperManager.getInstance(getApplicationContext());
myWallpaperManager.setResource(id);
这篇关于如何设置壁纸(viewpager)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文