У меня есть два классаКак вызвать событие из основной деятельности из другого класса?
Первые являются основным видом деятельности для моего приложения
ScreenSlideActivity.java
&Второго класс (
ScreenSlidePageFragment.java
) я использовал его для просмотра изображений и прокручивать Просмотр страницы пейджера
Что я хочу, когда я нажимаю на экран мобильного телефона, чтобы открыть меню опций, от основного действия ic не делать это, потому что я называю зрителя не его содержание:
public class ScreenSlideActivity extends FragmentActivity {
private static final int NUM_PAGES =604 ;
public static int cu_sura;
public static String Pac_name="";
public static boolean me_r=false;
private ViewPager mPager;
private PagerAdapter mPagerAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_screen_slide);
Pac_name=getApplicationContext().getPackageName();
// Instantiate a ViewPager and a PagerAdapter.
mPager = (ViewPager) findViewById(R.id.pager);
mPagerAdapter = new ScreenSlidePagerAdapter(getFragmentManager());
mPager.setAdapter(mPagerAdapter);
cu_sura=StoreManager.getCurrentSora(ScreenSlideActivity.this);
if(cu_sura == 0)
{
mPager.setCurrentItem(604);
}
else
{
mPager.setCurrentItem(cu_sura);
}
mPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
invalidateOptionsMenu();
}
});
mPager.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
openOptionsMenu();
return false;
}
});
}
и то, что я хочу, когда я называю onclicklistener во втором классе, чтобы иметь реагировать от основной деятельности:
public class ScreenSlidePageFragment extends Fragment {
public static final String ARG_PAGE = "page";
private int mPageNumber;
public static ScreenSlidePageFragment create(int pageNumber) {
ScreenSlidePageFragment fragment = new ScreenSlidePageFragment();
Bundle args = new Bundle();
args.putInt(ARG_PAGE, pageNumber);
fragment.setArguments(args);
return fragment;
}
public ScreenSlidePageFragment() {
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mPageNumber = getArguments().getInt(ARG_PAGE);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout containing a title and body text.
ViewGroup rootView = (ViewGroup) inflater
.inflate(R.layout.fragment_screen_slide_page, container, false);
ScreenSlideActivity.cu_sura=mPageNumber;
int num=(mPageNumber -605)*-1;
String name="p"+num;
int imgId = getResources().getIdentifier(name, "drawable",com.bilal.read_quran.ScreenSlideActivity.Pac_name);
// Bitmap b = BitmapFactory.decodeResource(getResources(), imgId);
((ImageView) rootView.findViewById(R.id.imageView1)).setImageResource(imgId);
((ImageView) rootView.findViewById(R.id.imageView1)).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
ScreenSlideActivity.me_r=true;
}
});
// Set the title view to show the page number.
/* ((TextView) rootView.findViewById(android.R.id.text1)).setText(
getString(R.string.title_template_step, mPageNumber + 1));
*/
return rootView;
}
так Могу ли я получить какое-либо решение ???
он не работает :( – BilalMarzouk