android嵌套
⑴ android一個布局被強嵌套在別的布局裡怎麼解決
Accessibility
由於部分安卓用戶在身體的問題致使他們不能看完整的屏幕或者使用觸屏,google提供了Accessibility功能和服務幫助這些用戶更加簡單地操作設備。這其中最主要的一個類就是AccessibilityService,AccessibilityService是一個系統服務,它運行在後台,並且能夠收到由系統發出的一些事件,比如通知狀態、按鈕被點擊了等等。界面中產生的任何變化都會由系統通知給AccessibilityService.這就像監視器監視著界面的一舉一動。
AccessibilityService生命周期
AccessibilityService繼承了service,他是在後台運行的。
1、AccessibilityService是系統服務,該服務完全由系統管理,並遵循已有的服務周期.
2、開啟一個服務只能由用戶在設置中打開,而關閉則只能由用戶在設置中關閉或者服務本身通過diableSelf()方法關閉
3、系統綁定該服務之後,會調用onServiceConnected()方法,這個方法可以被重寫,在這里可以做一些初始化的操作.
4、在實際的操作實驗中發現,即便手動開啟該服務,在6.0以上的系統經過一段時間也會自動關閉。
在實際開發中,可以繼承AccessibilityService類,然後有選擇的實現其中的一部分函數,就可以實現一些特殊的功能。
⑵ android studio嵌套布局怎麼弄
首先activity_main採用的是RelativeLayout布局方式,然後通過include標簽引入一個LinearLayout的布局文件。
建一個xml文件,取名twobtn.xml,內容如下
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<Button android:layout_width="0sp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="@string/equal"/>
<Button android:layout_width="0sp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="@string/clear"/>
</LinearLayout>
注意以上代碼中的android:layout_weight屬性。
然後在主layout文件中加入以下代碼
<include
android:id="@+id/btn" layout="@layout/twobtn"
android:layout_below="@id/theTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="0sp"
android:layout_marginRight="0sp"/>
⑶ android的Activity能夠嵌套另一個Activity嗎
不可以。
android的機制只能保證只有一個activity處於激活狀態,因此無法一個以上activity同時激活,也就不存在能夠嵌套的問題。
⑷ android 如何使用代碼實現嵌套布局。具體看問題補充
你的問題應該是要動態生成空間吧。
下面的答案可以參考下。
首先要卻這個界面的布局,是AbsoluteLayout,RelativeLayout還是其他,然後就可以再裡面添加控制項了:
public
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
//確定界面的布局
AbsoluteLayout
abslayout=new
AbsoluteLayout
(this);
setContentView(abslayout);
//創建一個button按鈕
Button
btn1
=
new
Button(this);
btn1.setText(」this
is
a
button」);
btn1.setId(1);
//確定這個控制項的大小和位置
AbsoluteLayout.LayoutParams
lp1
=
new
AbsoluteLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT,
0,100);
abslayout.addView(btn1,
lp1
);
}
一個界面可以布置一個布局,可以多個布局一起設計:
public
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
//設置界面的布局
RelativeLayout
relativeLayout
=
new
RelativeLayout(this);
setContentView(relativeLayout);
//添加一個AbsoluteLayout子布局,並給這個布局添加一個button
AbsoluteLayout
abslayout=new
AbsoluteLayout
(this);
abslayout.setId(11);
Button
btn1
=
new
Button(this);
btn1.setText(」this
is
a
abslayout
button」);
btn1.setId(1);
AbsoluteLayout.LayoutParams
lp0
=
new
AbsoluteLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT,100,0);
abslayout.addView(btn1,
lp0
);
//將這個子布局添加到主布局中
RelativeLayout.LayoutParams
lp1
=
new
RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
lp1.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp1.addRule(RelativeLayout.CENTER_HORIZONTAL,
RelativeLayout.TRUE);
relativeLayout.addView(abslayout
,lp1);
//再添加一個子布局
RelativeLayout
relativeLayout1
=
new
RelativeLayout(this);
Button
btn2
=
new
Button(this);
btn2.setText(」this
is
a
relativeLayout1
button」);
btn2.setId(2);
RelativeLayout.LayoutParams
lp2
=
new
RelativeLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
lp2.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp2.addRule(RelativeLayout.CENTER_HORIZONTAL,
RelativeLayout.TRUE);
relativeLayout1.addView(btn2
,lp2);
//將這個布局添加到主布局中
RelativeLayout.LayoutParams
lp11
=
new
RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
lp11.addRule(RelativeLayout.BELOW
,11);
relativeLayout.addView(relativeLayout1
,lp11);
}
⑸ android 布局嵌套過多會不會造成內存泄漏
嵌套過多不會造成內存泄露,只會是在載入布局文件的時候反應慢。層次越多載入越慢,反之則越快。
⑹ android 布局 嵌套多少
android 布局的話,建議是不要超過3層,因為超過了3層就會導致過度渲染,導致界面刷新的時候,會有卡頓的現象.
⑺ android中framelayout 和linearlayout嵌套問題。
就是在第一個framelayout中再嵌套一個framelayout。不過感覺這樣沒什麼用啊。Layout嵌套是在復雜UI中實現布局的,比如在垂直的LinearLayout中要實現一排水平的按鈕,就可以再嵌套一個水平的LinearLayout,在水平的LinearLayout添加多個按鈕。因為FrameLayout布局的特殊性,我感覺再嵌套一個FrameLayout沒有什麼用。除非是嵌套的FrameLayout是單獨顯示某些信息的,在需要顯示的時候設置其setVisibility(View.VISIBLE)顯示,不用時設置其setVisibility(View.GONE)不顯示。不知道這樣說的清不清楚。
⑻ Android 怎麼解決回調函數深度嵌套
將這些回調函數所改變的狀態保存到全局變數,然後拆分為多個事件,每個事件都去讀取和改變這些狀態
⑼ android 的布局文件中framelayout嵌套framelayout是什麼意思
android 的布局文件中framelayout嵌套framelayout是指就是在第一個framelayout中再嵌套一個framelayout。如圖:
Layout嵌套是在復雜UI中實現布局的,比如在垂直的LinearLayout中要實現一排水平的按鈕,就可以再嵌套一個水平的LinearLayout,在水平的LinearLayout添加多個按鈕。
⑽ android 如何多層嵌套布局
先 <include layout="@layout/another_layout" /> 這個布局 然後在 another_layout這個布局裡面寫上這個布局的id 並且設置可見屬性為 GONE ,然後比如你是通過按鈕來顯示的話,你就在按鈕點擊的時候,把another_layout 的可見屬性設置為VISSABLE
當然還有其他的實現方式,這種是比較簡單的