我正在開發使用碎片的Android 3.1應用程序。通過編程創建的按鈕上的OnClick事件處理程序
在其中一個片段上,需要創建按鈕併爲其中的每個按鈕設置一個onClick事件處理程序n。
要做到這一點,我想在FragmentActivity
上創建一個方法來處理這些事件,但我不知道如何。注意:FragmentActivity
是使用android.support.v4.view.ViewPager
管理所有片段的android.support.v4.app.FragmentActivity
。
在另一個片段,我有以下XML
代碼:
<Button
android:id="@+id/btnTakeArticlePhotos"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="@string/btn_take_photo"
android:onClick="onTakePhotoClick" />
而這種代碼在FragmentActivity
:
public void onTakePhotoClick(View view)
{
Log.v("FillEReportFragmentActivity", "onTakeFactoryPhotoClick");
int imgType, imgSubType;
switch (view.getId())
{
case R.id.btnTakeFactoryPhotos:
imgType = ImageType.EREPORT;
imgSubType = SubImageType.EREPORT_FACTORY_OUTLOOK;
break;
case R.id.btnTakeArticlePhotos:
imgType = ImageType.ARTICLE;
imgSubType = SubImageType.NONSET;
default:
imgType = -1;
imgSubType = -1;
break;
}
Intent intent = new Intent(FillEReportFragmentActivity.this, CameraActivity.class);
intent.putExtra(BundleKeys.tablePk, eReportId);
intent.putExtra(BundleKeys.imgType, imgType);
intent.putExtra(BundleKeys.imgSubType, imgSubType);
startActivityForResult(intent, CAMERA_REQUEST_CODE);
}
我想要做同樣與這些n
按鈕:上創建方法FragmentActivity
來處理所有onClick事件。
我看到,如果我想要在編程創建的按鈕上處理onClick事件,我需要實現onClickEventListener
。
如何處理FragmentActivity
上的onClick事件?還是有更好的方法?