2016-09-21 88 views
0

我想從editText中加載一個新的頁面,給定的「頁面」位置。這怎麼可能? 感謝您的幫助。如果我按下按鈕,如何更改頁面? (Android,ViewPager)

@Override 
public Object instantiateItem(final ViewGroup container, int position) { 
    mLayoutInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    final View item_view = mLayoutInflater.inflate(R.layout.swipe_layout, container, false); 
    final ImageView imageView = (ImageView) item_view.findViewById(R.id.fortepanImageView); 
    TextView maxPages = (TextView) item_view.findViewById(R.id.fortepanMaxTextView); 
    final EditText currentEditText = (EditText) item_view.findViewById(R.id.fortepanEditText); 
    Button button = (Button) item_view.findViewById(R.id.fortepanJumpButton); 
    imageView.setImageResource(image_resources[position]); 
    currentEditText.setText(position + ""); 
    maxPages.setText(getCount() + ""); 

    button.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      int page = Integer.parseInt(currentEditText.getText().toString()); 
      instantiateItem(imageView, page); 
      /*imageView.setImageResource(image_resources[page]); 
      currentEditText.setText(page + "");*/ 
     } 
    }); 

    container.addView(item_view); 
    return item_view; 
} 

回答

0

MyActivity:

public void setCurrentItem (int item, boolean smoothScroll) { 
    myPager.setCurrentItem(item, smoothScroll); 
    } 

片段:

button.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     MyEdittext = getText.toString(); 
     int pageno = Integer.parseInt(MyEdittext.getText().toString()); 
     ((MyActivity)getActivity()).setCurrentItem (pageno, true); 
    } 
}); 

我的理解是正確的幫助你

+0

如何將這項工作?你能解釋我嗎?我收到一個錯誤...:/ – Marci

+0

你怎麼得到一個錯誤? –

+0

我認爲是因爲它是一個活動,而不是一個片段。 (無法解析方法getActivity()) – Marci

相關問題