請不要評價我,我對Android開發非常新......我想用viewPager做一個應用程序......我有三個不同的佈局頁面......但我無法確定瞭解如何處理viewPager第二頁上的按鈕。我發現這個問題「How to write button onClick method in viewpager?」,並設置我的代碼是這樣的:viewPager按鈕活動?
ViewPagerAdapter:
@Override
public Object instantiateItem(View pager, int position)
{
View v = new View(pager.getContext());
LayoutInflater inflater =
(LayoutInflater) pager.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
int resId = 0;
switch (position) {
case 0:
resId = R.layout.deneme;
break;
case 1:
resId = R.layout.deneme2;
break;
case 2:
resId = R.layout.deneme3;
break;
}
v = inflater.inflate(resId, null);
((ViewPager) pager).addView(v, 0);
return v;
}
在這裏,我得到錯誤: 「的方法findViewById(INT)是不確定的新類型View.OnClickListener(){}」上線
LinearLayout l = (LinearLayout) findViewById(R.id.layout2);
和 「所述的方法,getResources()是未定義用於在線
類型新View.OnClickListener(){}」l.setBackgroundDrawable(getResources().getDrawable(R.drawable.background));
主營:
public class ViewPagerProjectActivity extends Activity {
Button btn;
View deneme2lout;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ViewPagerAdapter adapter = new ViewPagerAdapter(this);
ViewPager pager = (ViewPager)findViewById(R.id.viewpager);
pager.setAdapter(adapter);
pager.setCurrentItem(0);
LayoutInflater getView = getLayoutInflater();
deneme2lout = (View) getView.inflate(R.layout.deneme2,null);
btn = (Button) deneme2lout.findViewById(R.id.button1);
}
public void buttonClick(View v) {
if(v.equals(btn)) {
deneme2lout.setBackgroundDrawable(getResources().getDrawable(R.drawable.background));
}
}
}
所以我得到的,我不能使用這兩個代碼,所以,我應該怎麼辦呢?點擊第二個佈局上的按鈕時,我需要更改第二個頁面的背景。
這是我的deneme2.xml代碼:
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button1"
android:layout_width="175dp"
android:layout_height="95dp"
android:layout_x="69dp"
android:layout_y="174dp"
android:textSize="25dp"
android:text="Change" />
</AbsoluteLayout>
感謝您的代碼幫助我。 – Kedarnath 2014-06-11 16:54:07
很高興聽到它:) @Kedarnath – yahya 2014-06-12 06:30:00