1. 程式人生 > >Viewpager+fragment結構,如何獲取fragment中的控制元件

Viewpager+fragment結構,如何獲取fragment中的控制元件

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">背景:</span>

MainActivity中有一個ViewPager,ViewPager中有四個fragment,在fragmentA中點選某個按鈕後一開一個activityA,activityA將一些資料返回給fragmentA,然後fragmentA修改控制元件的屬性。

問題:

在實際操作中,我在fragmentA中使用getActivity().startActivityForResult(intent, 10);開啟activityA,然後打算使用類似activity間資料的傳遞------在fragmentA中用onActivityResult(int requestCode, int resultCode, Intent data)接收資料,但是無論如何都是空指標。

解決:

在fragmentA中不能通過onActivityResult接收資料,但是MainActivity可以通過onActivityResult(int requestCode, int resultCode, Intent data)接收activityA返回的資料,然後通過:

            HomePagerFragment fragment=(HomePagerFragment)getSupportFragmentManager().findFragmentByTag(
                    "android:switcher:" + pager.getId() + ":" + fragmentAdapter.getItemId(0));
獲取到相應的fragment。(Ps:<span style="font-family: Arial, Helvetica, sans-serif;">fragmentAdapter.getItemId(0)中的0表示該fragment在ViewPager中的位置</span>)。
然後通過該fragment找到內部控制元件:
            TextView tv = (TextView) fragment.getView().findViewById(R.id.Search_city_txt);
            tv.setText(cityName);

相關推薦

ViewPager的使用及獲取子view控制元件的操作(inflate)

Step 1: 佈局檔案中新增viewpager和切換頁面button <span style="font-size:18px;"><RelativeLayout xmlns:android="http://schemas.android.com/apk

Viewpager+fragment結構如何獲取fragment控制元件

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">背景:</span> MainActivity中有一個Vie

ViewPager動態新增XML佈局檔案獲取XML檔案控制元件ID的操作(inflate)

Step 1: 佈局檔案中新增viewpager和切換頁面button <spanstyle="font-size:18px;"><RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/a

ViewPager搭配FragmentStatePagerAdapter如何獲取Fragment的引用

我們知道如果用FragmentPagerAdapter這個介面卡的話,通過以下程式碼可以獲取ViewPager裡每個Fragment的引用: String name = "android:switcher:" + viewPagerId+ ":" + in

關於在Fragment通過Activity介面回撥操作Fragment控制元件報空指標問題

現象描述:當Activity中某個變數改變時候,需要通知到Fragment我們常常用介面實現...。。我們在Activity中先replace,commit該Fragment,接著呼叫介面需要改變變數的方法。。。然後我們在Fragment中的介面回撥方法裡,更具該變數操縱F

獲取應用版本號版本名稱包名AppName圖標是否是系統應用獲取手機所有應用所有進程

pac version raw 是否 系統 app bsp agen nco PackageManager packageManager = getPackageManager(); PackageInfo packageInfo; = packageManager.get

java使用apk-parser解析apk獲取manifest的版本號及自定義變數

apk-parser地址: https://github.com/hsiafan/apk-parser 1.獲取版本號等資訊: try (ApkFile apkFile = new ApkFile(new File(filePath))) { ApkMeta apkMeta

WPF 獲取 ListView DataTemplate 控制元件

原文: WPF 獲取 ListView DataTemplate 中控制元件值 RT 雖然DataTemplate 是用來繫結的,一般用ONE TWOWAY 來繫結傳遞或獲取資料. 但是今天這個需求真是沒辦法,在繫結的模板內添加了一個非繫結的資料,需要手動取值. 解決方案原理:

MFC OnPaint控制元件繪圖覆蓋重疊的控制元件

對話方塊上又兩個控制元件,一個static控制元件SS_BITMAP屬性,用來繪圖(canvas),一個static控制元件SS_BITMAP屬性,用來顯示圖片(tool),tool和canvas有重疊部分,為了使canvas在重新整理後不至於消失,我在OnPaint中採用雙緩衝繪圖方式重新整理內容

繼續對上一頁的ecah進行 優化求一個數組的和最大值最小值獲取陣列的元素3

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style t

Java讀js檔案獲取object的值

資料 classes=[ { "name":"class1", "student":["joke1","joke2"] },{ "name":"class2", "student":["joke3","joke4"] }] Java讀取資料 /*獲取執

Java筆記:[反射篇] 利用反射獲取的私有內部類物件並呼叫該物件的方法

public void smoothScrollBy(int dx, int dy, int duration) { try { Class<?> c = null; try { c = Class

在js檔案獲取webconfig的配置資訊

webconfig中的配置資訊 <!--預設押金--> <add key="OverDueMoney" value="80" /> 1.在客戶端頁面(非單獨的js檔案),可以直接獲取webconfig的配置資訊

如何查詢窗體獲取窗體的控制代碼Hwnd FindWindow函式

/*CWnd::FindWindowstatic CWnd* PASCAL FindWindow( LPCTSTR lpszClassName, LPCTSTRlpszWindowNa- me );返回值:標識了具有指定的類名或視窗名的視窗。如果沒有找到這樣的視窗,則返回N

定義一個數組獲取陣列的最大值和最小值

思路 : 我們定義一個數組,再定義一個max變數 用來儲存最大值  ; 再定義一個min變數,用來儲存最小值; 我們遍歷陣列,假如當前值大於max,就把當前值賦值給max; 假如當前值小於min,就把當前值賦值給min; 我們給下示例程式碼: 1 2

Android控制元件的事件——xml設定對應效果state_[pressedcheckedselectedfocused]

本篇文章主要是討論下控制元件的點選事件 一、在Drawable中新增控制元件的backgroundColor樣式(點選切換顏色) 直接貼測試結果了:【在Drawable中建立xml資原始檔,在其中的Selector標籤對中新增樣式(如下黑色截圖)】 ImageButton

jquery 子窗體獲取父窗體控制元件並賦值後臺呼叫前臺指令碼或者在後臺直接寫指令碼

子窗體前臺指令碼方法,獲取父窗體的控制元件並賦值,使用iframe了: <script type="text/javascript"> function SetCou

Ajax請求成功後獲取success的返回的問題

1.問題描述:在使用Ajax獲取josn傳過來的集合後,在success回撥函式中對josn資料解析完成之後,返回的值為空 2.解決辦法:設定Ajax的方法引數async為false,

nodeJs快速拼接sql獲取用於事務控制的sql_params物件

nodeJs快速拼接sql,獲取sql_params[] 之前開發一個專案,一開始是MongoDB,後來因為事務不好控制,改用Mysql,導致很多方法不可用,並且拼接sql很麻煩,所以寫了一個工具來實現快速拼接sql,快速獲取sql_params[]物件用於事

python讀取xml資料庫中表內所有資料獲取資料庫所有表的欄位名稱

工作中需要讀取指定xml資料庫中的資料以及 表所需欄位名,所以在已有例子中改進實現: xml 資料庫 xmldabase.xml: <database> <manifest> <pair key="schema_major_vsn" v