टुकड़ा गतिविधि के लिए मेरे मामले में निम्न ठीक काम कर रहा है।
((CommentActivity)getActivity()).pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
final InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(txtComment.getWindowToken(), 0);
}
@Override
public void onPageScrolled(int position, float offset, int offsetPixels) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
अद्यतन: यह मेरा टुकड़ा गतिविधि है जहाँ से दो टुकड़े (CommentFragment, AnotherFragment) एक ViewPager
public class CommentActivity extends FragmentActivity {
ViewPager pager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
pager = (ViewPager) findViewById(R.id.viewPager);
.......
.......
}
private class MyPagerAdapter extends FragmentPagerAdapter {
public MyPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int pos) {
switch(pos) {
case 0: return CommentFragment.newInstance();
default: return AnotherFragment.newInstance();
}
}
@Override
public int getCount() {
return 2;
}
}
}
में खोल रहे हैं कीपैड CommentFragment में एक EditText के लिए दिखाई देते हैं और करना चाहते है, तो था अन्यफ्रैगमेंट पर स्विच करें और स्विच
public class CommentFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
.........
.........
.........
((CommentActivity)getActivity()).pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
final InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(txtComment.getWindowToken(), 0);
}
@Override
public void onPageScrolled(int position, float offset, int offsetPixels) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
}
/* सॉफ़्ट कीबोर्ड को छुपाएं * के समय कीपैड को छिपाना चाहते हैं * ।/\t एक पंक्ति में: '(। (InputMethodManager) getActivity() getSystemService (Context.INPUT_METHOD_SERVICE)) hideSoftInputFromWindow (view.getWindowToken(), 0);' –