2011-09-21 5 views
55

팝업 창을 android에 생성해야합니다. 내 요구 사항은 1 페이지에 있습니다. 하이퍼 링크을 클릭하면 클릭하면 팝업 창이 열립니다.. 나는 많은 튜토리얼을 거치고 시도했지만 그들 중 누구도 나를 위해 일하지 않았다.에 팝업 창을 만드는 방법에 대해 도와주세요.android에서 팝업 창을 만드는 방법은 무엇입니까?

+2

아래의 링크 및 예제를 참조하십시오. http://www.mobilemancer.com/2011/01/08/popup-window-in-android/ http://stackoverflow.com/questions/1967863/is- 예 - 팝업 - 클래스 - 사용 - android - v2-0 –

+0

더 많은 예제를 찾고있는 사람들을 위해, 나는이 저장소를 추천 할 수있다 : https://github.com/oliguo/android- PopupWindow 두 가지 유형의 팝업 및 레이아웃이 코드 대신 XML로 포함되어 있습니다. –

+0

도 참조하십시오 [간단한 안드로이드 팝업 창 만드는 법] (https://stackoverflow.com/questions/38987442/how-to-make-a-simple-android-popup-window/45077688#45077688) – Suragch

답변

76
import android.app.Activity; 
import android.os.Bundle; 
import android.view.Gravity; 
import android.view.View; 
import android.widget.Button; 
import android.widget.LinearLayout; 
import android.widget.PopupWindow; 
import android.widget.TextView; 
import android.view.ViewGroup.LayoutParams; 

public class ShowPopUpWindow extends Activity { 

    boolean isClicked = true; 
    PopupWindow popUpWindow; 
    LayoutParams layoutParams; 
    LinearLayout mainLayout; 
    Button btnClickHere; 
    LinearLayout containerLayout; 
    TextView tvMsg; 



    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     containerLayout = new LinearLayout(this); 
     mainLayout = new LinearLayout(this); 
     popUpWindow = new PopupWindow(this); 


     btnClickHere = new Button(this); 
     btnClickHere.setText("Click Here For Pop Up Window !!!"); 
     btnClickHere.setOnClickListener(new View.OnClickListener() { 

      public void onClick(View v) { 
       if (isClicked) { 
        isClicked = false; 
        popUpWindow.showAtLocation(mainLayout, Gravity.BOTTOM, 10, 10); 
        popUpWindow.update(50, 50, 320, 90); 
       } else { 
        isClicked = true; 
        popUpWindow.dismiss(); 
       } 
      } 

     }); 

     tvMsg = new TextView(this); 
     tvMsg.setText("Hi this is pop up window..."); 

     layoutParams = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, 
       LayoutParams.WRAP_CONTENT); 
     containerLayout.setOrientation(LinearLayout.VERTICAL); 
     containerLayout.addView(tvMsg, layoutParams); 
     popUpWindow.setContentView(containerLayout); 
     mainLayout.addView(btnClickHere, layoutParams); 
     setContentView(mainLayout); 

    } 
} 
+0

고마워. 샘플 코드 .it 잘 작동합니다 해당 팝업 창에 textview 및 단추를 배치해야합니다. 우리는 xml 레이아웃으로 버튼과 텍스트 뷰를 만들 수 있고 그 팝업 창을 위해 사용할 수 있습니까? –

+0

옙 왜 안 되니? ... 팝업 창에서 사용할 수있는 안드로이드의 위젯 –

+0

고맙습니다. 레이아웃 main1.xml을 만들었습니다. 이제 창이 팝업 창에 추가하는 방법은 무엇입니까? 나는 일반적으로 우리가 setContentView (R.layout.main1)처럼 줄 것을 의미한다 ... ... 마찬가지로 팝업 창에 xml 파일을 추가하는 방법? –

관련 문제