1

フラグメントが正常に機能しているアプリがあります。

今、私はいくつかのポップアップビューを実装する必要があります、

このチュートリアルに従っていますPopupWindowの使用例

すべて問題ないようですが、「popupWindow」の表示方法に疑問があるため、ポップアップはまだ表示されていません。

私の.java

public class Tab2HeadH1 extends Fragment implements OnClickListener {

   //testeo popero

   @Override
   public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

       View view = inflater.inflate(R.layout.tab_2_head_buttons, container,false);

       //Buttons

       Button buttonNose = (Button) view.findViewById(R.id.button_pop_nose);

       buttonNose.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(final View v) {
                //aqui tus tareas,,

                //LayoutInflater layoutInflater = (LayoutInflater)getBaseContext().getSystemService(LAYOUT_INFLATER_SERVICE);  //old errors
                LayoutInflater layoutInflater = (LayoutInflater)getActivity().getBaseContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);

                View popupView = layoutInflater.inflate(R.layout.popup, null);  
                final PopupWindow popupWindow = new PopupWindow(
                      popupView, LayoutParams.WRAP_CONTENT,  
                            LayoutParams.WRAP_CONTENT);

             }

      });

      Button buttonEye = (Button) view.findViewById(R.id.button_pop_eye);

      buttonEye.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(final View v) {
           // onLoginClicked(v);
            Toast.makeText(getActivity(), "ss9 eye",
                    Toast.LENGTH_SHORT).show();

         }
      });

      return view;
   }



    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {

       super.onViewCreated(view, savedInstanceState);
       ((TabActivity)getActivity()).setHeader("TAPING APPLICATION");
    }

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        switch (v.getId()) {

       }
    }


}

では、ポップアップを表示するために何が欠けていますか?

どうもありがとう!

4

3 に答える 3

2

カスタムポップアップウィンドウを生成する場合は、AlertDialog.Builderを使用してこれを行うことができます

private AlertDialog.Builder scheduleBuilder;
private AlertDialog dialog_Creater;

LayoutInflater myLayoutInflater = getLayoutInflater();
View v = myLayoutInflater.inflate(R.layout.schedule_creator, null); //Replace your layout R.layout.youLayout
            scheduleBuilder = new AlertDialog.Builder(v.getContext());


            scheduleBuilder.setTitle("Edit your Schedule Memo");
            scheduleBuilder.setView(v); //set view 



            dialog_Creater = scheduleBuilder.create();
            dialog_Creater.show();
于 2012-08-01T07:58:15.533 に答える
1

ポップアップを正常に設定している間は、実際にはどこにも表示するためのメソッドを呼び出していません。次のいずれかの方法を呼び出して、開く必要があります。

  1. showAtLocation()
  2. showAsDropDown()
  3. showAsDropDown()(#2とは異なります)
于 2012-08-01T07:53:18.973 に答える
1

これを試して:-

PopupWindow pw;

View layout = inflater.inflate(R.layout.popnumber,
                (ViewGroup) findViewById(R.id.lytpopuppoppop));

// your popup layout  and  id of root layout 

pw = new PopupWindow(layout, LayoutParams.FILL_PARENT,
                LayoutParams.WRAP_CONTENT, true);
// your main layout where you display popup
pw.showAtLocation(findViewById(R.id.lytboard), Gravity.CENTER,
                        0, 0);
于 2012-08-01T07:54:09.917 に答える