第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

從活動(dòng)創(chuàng)建片段后,getView返回null

從活動(dòng)創(chuàng)建片段后,getView返回null

拉風(fēng)的咖菲貓 2019-12-03 16:18:04
我有一個(gè)可以正常工作的平板電腦應(yīng)用程序,現(xiàn)在我也在嘗試在手機(jī)上工作。在一個(gè)表上,屏幕上有兩個(gè)片段,一個(gè)列表片段和一個(gè)詳細(xì)信息片段。在電話上時(shí),列表片段會(huì)出現(xiàn),并在按下列表項(xiàng)時(shí)創(chuàng)建一個(gè)新活動(dòng)。此活動(dòng)僅在onCreate()方法中創(chuàng)建片段并將其提交到屏幕,如下所示。// Place an DeallDetailsFragment as our content paneDealDetailsFragment f = new DealDetailsFragment();getFragmentManager().beginTransaction().add(android.R.id.content, f).commit();getFragmentManager().executePendingTransactions();這正在按預(yù)期工作,但是從此活動(dòng)中,我需要告訴片段要加載和顯示的詳細(xì)信息。在我的DealDetailsFragment類中,我有一個(gè)updateDeal()更新內(nèi)容的方法,如下所示。if (deal==null) { // could be null if user presses the loading deals list item before it loads    return;}this.deal=deal;if (dealTitle==null) { // get the view objects only once    holder = new ViewHolder();      holder.dealHeat=(TextView) getView().findViewById(R.id.dealDetails_heat_textView);    holder.dealPrice=(TextView) getView().findViewById(R.id.dealDetails_price_textView);    holder.dealRetailer=(TextView) getView().findViewById(R.id.dealDetails_retailer_textView);    holder.dealTitle=(TextView) getView().findViewById(R.id.dealDetails_title_textView);    holder.dealDesc=(TextView) getView().findViewById(R.id.dealDetails_desc_textView);    holder.goToButton= (LinearLayout) getView().findViewById(R.id.dealDetails_goToDeal);    holder.dealImage=(ImageView) getView().findViewById(R.id.dealDetails_imageView);    holder.postedBy=(TextView) getView().findViewById(R.id.dealDetails_poster_textView);    holder.datePosted=(TextView) getView().findViewById(R.id.dealDetails_date_textView);getView() 當(dāng)應(yīng)用程序在僅顯示單個(gè)片段的電話上運(yùn)行時(shí),返回null。有任何想法嗎?不幸的是,在線上沒(méi)有很多片段示例。
查看完整描述

3 回答

?
不負(fù)相思意

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個(gè)贊

將方法移至onCreateView()無(wú)濟(jì)于事。所以...創(chuàng)建一個(gè)全局變量mView


 protected View mView;

并在onCreateView()中


 @Override

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

        Log.d(TAG, "oncreateView");

        super.onCreateView(inflater, container, savedInstanceState);


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

        this.mView = view;

        return view;

}

然后getView()用mView


查看完整回答
反對(duì) 回復(fù) 2019-12-03
?
翻閱古今

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊

您必須檢查Android生命周期以了解為什么onAttach(...)函數(shù)上它為null。


添加創(chuàng)建片段時(shí)調(diào)用的第一個(gè)函數(shù)是onAttach(),但實(shí)際上尚未創(chuàng)建任何視圖。這就是為什么當(dāng)您嘗試在此調(diào)用中訪問(wèn)時(shí)返回null的原因。


下一個(gè)函數(shù)是onCreate() ...但是還沒(méi)有創(chuàng)建視圖!


調(diào)用的第三個(gè)函數(shù)是onCreateView(),在這里您必須指出哪個(gè)是附加到此片段的視圖...。而且只有在此調(diào)用中,視圖對(duì)象存在并且可以訪問(wèn)。


查看完整回答
反對(duì) 回復(fù) 2019-12-03
  • 3 回答
  • 0 關(guān)注
  • 602 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)