亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

popupwindow 出錯

源代碼

public class MenuWindow extends PopupWindow {

private View contentView = null;


public MenuWindow(final Activity context) {

LayoutInflater inflater = (LayoutInflater) context

.getSystemService(context.LAYOUT_INFLATER_SERVICE);

contentView = inflater.inflate(R.layout.menu_window, null);


// 設置selectpopwindow的view

this.setContentView(contentView);


// 設置selectpopwindow彈出窗體的高

this.setHeight(LayoutParams.WRAP_CONTENT);


// 設置selectpopwindow彈出窗體的寬

this.setWidth(140);


// 設置selectpopwindow彈出窗體可點擊

this.setFocusable(true);

this.setOutsideTouchable(true);


// 刷新狀態

this.update();


// 實例化一個colordrawable對象,設置顏色半透明

ColorDrawable drawable = new ColorDrawable(0000000000);


// 點back鍵 和其他地方使其消失,設置這個才能觸發ondismisslistener,設置其他控件變化等操作

this.setBackgroundDrawable(drawable);


LinearLayout take = (LinearLayout) contentView

.findViewById(R.id.takelayout);

take.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

MenuWindow.this.dismiss();

}

});

LinearLayout pic = (LinearLayout) contentView

.findViewById(R.id.piclayout);

pic.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

MenuWindow.this.dismiss();

}

});


}


public void ShowMenuWindow(View parent) {

if (!this.isShowing()) {

this.showAsDropDown(parent, 5, 5);

} else {

this.dismiss();

}

}


跳轉代碼

public class RegisterActivity extends Activity {

private Button btnUpload;


@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.relayout);


initControl();


btnUpload.setOnClickListener(new OnClickListener() {


public void onClick(View arg0) {

MenuWindow menu = new MenuWindow(null);

menu.ShowMenuWindow(arg0);


}

});

}


private void initControl() {

btnUpload = (Button) findViewById(R.id.btnUploadpic);


}


}

代碼沒有顯示出錯,就是運行時一點擊就退出,不知道哪里的問題,哪位救救我啊

http://img1.sycdn.imooc.com//57eb0ff60001a20d08430437.jpg

正在回答

1 回答

你在實例化MenuWindow?時new MenuWindow(null)傳入了null,使得構造函數執行

LinearLayout pic = (LinearLayout) contentView.findViewById(R.id.piclayout)時產生了空指針引用


0 回復 有任何疑惑可以回復我~
#1

wanan霓裳1007 提問者

非常感謝!
2016-10-06 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Android攻城獅的第二門課(第3季)
  • 參與學習       74894    人
  • 解答問題       444    個

手勢識別、數據存儲和4大組件,讓你牢牢掌握之前的基礎知識點

進入課程

popupwindow 出錯

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號