1. 程式人生 > >安卓開發之非activity中呼叫佈局檔案

安卓開發之非activity中呼叫佈局檔案

前提:

MainActivity.java
Top.java
Mapp.java

activity_main.xml
top.xml
mapp.xml

在activity_main中
 <com.example.layout.Top
        android:layout_width="match_parent"  
        android:layout_height="wrap_content"    
        android:id="@+id/top"
        ></com.example.layout.Top>

    <com.example.layout.Mapp


        android:id="@+id/map"
        android:layout_width="match_parent"  
        android:layout_height="0dp"           
        android:layout_weight="1"    
        ></com.example.layout.Mapp>

1、在activity中呼叫top或者mapp

Mapp view = (Mapp)findViewById(R.id.map);
Top view1 = (Top)findViewById(R.id.top);

2、在top中呼叫mapp

LayoutInflater factory = LayoutInflater.from(((Activity) getContext())); 
View layout = factory.inflate(R.layout.activity_main, null); 
Mapp view = (Mapp)layout.findViewById(R.id.map);

PS:這個方法有點問題就是view.invalidate();和view.postInvalidate();無法重新整理

如果在map中繪圖,在top中重新整理map使用這個方法就不行,invalidate執行了但是無法呼叫onDraw方法,

另一種方法:

在activity中建立方法getMap()

並新增Mapp view = (Mapp)findViewById(R.id.map);view.invalidate();

然後在top中呼叫這個方法((MainActivity) getContext()).getMap();就可以在top中重新整理mapp了

相關推薦

開發activity呼叫佈局檔案

前提: MainActivity.javaTop.javaMapp.javaactivity_main.xmltop.xmlmapp.xml在activity_main中 <com.exampl

開發Activity的4種啟動模式

一、四種啟動模式 Activity的啟動模式有4種,分別為standard、singleTop、singleTask、singleIntance。4種啟動模式的區別主要與Activity的任務棧管理有關,棧是一種後進先出的集合。 二、Activity啟動

開發Eclipsesvn外掛的安裝與使用

 SVN,全稱Subversion,分為伺服器版本和客戶端版本,我們使用的Eclipse SVN外掛就是SVN客戶端的一種。 Eclipse的SVN外掛主要有兩種,一種叫做Subclipse(主要支援Eclipse 3.2+ 和 SVN 1.5 ~ 1.8), 另一

開發使用ViewDragHelper簡單實現Activity左滑返回

一、ViewDragHelper 在另一篇部落格裡介紹了ViewDragHelper,這裡就不再介紹了。 二、Activity左滑返回的簡單實現 基本思路是使用ViewDragHelper自定義一個ViewGroup(命名為Swipe

【Android】開發activity如何傳值到fragment,activity與fragment傳值

作者:程式設計師小冰,GitHub主頁:https://github.com/QQ986945193 新浪微博:http://weibo.com/mcxiaobing 大家知道,我們利用acti

開發配置參數幫忙寫代碼 一

str size arr www 流程 () 安卓開發 ttext obj 在尋常的安卓開發中,流程都是這種,先把要須要顯示的界面繪制出來,在發送一個http請求。

粵嵌開發路在何方?

根據 移動平臺 想要 一般來說 架構師 不錯 機會 如果 未來 安卓已經發行多年,其Android開發領域趨於成熟穩定,同時整個移動互聯網仍在快速前進,移動應用也需要不斷進化,對安卓開發人員的要求也不斷提高。在未來,安卓開發還會像現在這樣吃香嗎?這也是粵嵌小編接下來要提到的

開發應用上架的那些事兒

應用市場 需要 不一致 安裝失敗 安卓開發 安卓 app 上架 那些事兒   工作的過程中遇到這樣的需求:要上架這個App到應用市場中,但是,應用市場中已經有了叫同樣名稱的App了,新上架的要頂替原來的,並且用戶安裝時以前下載到手機裏的這個名稱的app被替換掉。   這時我

開發socket的IP地址

1、IP地址獲取      socket.getInetAddress():本客戶端的IP地址              返回:/192.168.1.108     &

開發不通過USB資料線除錯的方法

搞安卓開發的程式設計師肯定都需要用又笨又礙手礙腳的USB資料線連線安卓裝置進行除錯,是不是覺得非常麻煩? 然後為了避免這種麻煩,我們一般通過網路上的各種方法,比如AS的外掛ADB WIFI,不知道大家是如何使用 這個ADB WIFI的,反正我是重來沒成功過,據說需要ROOT安卓裝置吧,但ROOT我依然不成

android開發activity控制另一個activity的UI更新

第一種方法: 遇到一個問題,需要在一個activity中控制另一個acitivity做一些更新,沒想到傳遞handler的方法,通過以下方式解決。 1.在MyAPP中定義屬性handler package jason.com; import jason.com.MasterAc

開發簡易新聞客戶端

 Entity包下建立實體類NewsInfo package cn.edu.bzu.myapplication.entity; /** * Created by Administrator on 2017/5/17. */ public class NewsInfo

開發so庫載入使用的那些坑

世上本沒有路,踩坑的多了就把路填平了。 一、UnsatisfiedLinkError基本介紹 全名     java.lang.UnsatisfiedLinkError 官方解釋     Throw if the java Virtural Machine cannot f

開發最簡單詳細的開發環境配置

一、jdk環境配置 (如果已經配置了就跳過這一步)   (記得勾選accept) 根據系統版本選擇下載並安裝,一路next。  然後配置環境變數 JAVA_HOME 二、下載adt bundle adt整合包已經在eclipse配置好了adt外掛,無需自己再

開發ListView

該控制元件類似於我們iOS中的tableview,那麼它需要cell(自定義item),model(Adapter自定義), cell例子寫法-- publicclassAnimal{private

開發引入第三方庫導致jar包衝突解決辦法

這幾天的任務是將mapbox的工程合到程式中去,但是合併過程卻出現了問題 合併方法: 在app的build.gradle中新增 dependencies { compile ('com.mapbox.mapboxsdk:mapbox-android

開發架構理解(MVP)

學習自MVP架構 MVP的全稱為Model-View-Presenter,即模型-檢視-協調器(主持者) Model:處理資料和業務邏輯等,如:資料庫的操作,資料的請求載入,資料運算,JavaBean; View:顯示介面,展示結果等,一切與介面相關的,如:XML檔案,

老牛知點所以然-Linux(Ubuntu)配置開發環境及過程常見問題解決

[TOC] 題記: 這篇部落格基本上是半年多實踐過程中積累到筆記中的。在第二次配置完開發環境後,我就有意識的把大概的配置過程形成了一個筆記,這半年多將近一年的時間裡,陸續發現了一些不足和謬誤,還有以前踩過的坑沒有及時記下來,最近又踩過的,逐漸補充了過來,算是

從0開始開發路_Android Studio安裝包

Android Studio原本是基於JAVA IDEA下的一個安卓開發外掛,後被谷歌從外掛中移了出來,成為獨立安卓開發IDE,但語言是基於JAVA!但是如果想要下載此IDE就要到谷歌官方的應用商店中下

C++ Builder XE8 開發使用TidTCPClient控制元件獲取接收資料長度的方法

本人在使用indy10.6.2的TCPClient控制元件時,由於沒有indy10的使用手冊,一直不知道如何獲取client接收資料的長度。 後來經過仔細的尋找和嘗試,終於找到了獲取接收資料長度的方法