android導航欄
『壹』 如何去掉android系統導航欄
隨意設置自定義對話框的位置2.設置對話框的背景為透明(這樣使得自定義的圖標完全起作用)
彈出對話框時不會同時彈出導航欄。
去除對話框的標題欄(如果不去除,標題欄可能顯示為一條橫線)
java代碼部分:
WindowdialogWindow=dialog.getWindow();
WindowManager.LayoutParamslp=dialogWindow.getAttributes();
dialogWindow.setGravity(Gravity.CENTER);
lp.x=0;//220;
lp.y=0;//130;
lp.width=422;
lp.height=167;
lp.type=WindowManager.LayoutParams.TYPE_SYSTEM_ERROR;
lp.flags=WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
dialogWindow.setAttributes(lp);
XML代碼部分(用於設置對話框的style):
<stylename="GeneralDialog"parent="android:style/Theme.Holo.Light.Dialog">
<itemname="android:windowBackground">@android:color/transparent</item>
<itemname="android:windowNoTitle">true</item>
</style>
『貳』 Android開發,請問這種導航欄怎麼寫
最外層可以用linearlayout,裡面的五個板塊每一個都用一個linearlayout包裹一個imageview和textview,當點擊某一個linear時,改變對應的imageview圖片就可以實現上面的效果了,手機打字的,希望採納啊!
『叄』 android頂部導航欄可以有什麼軟體修改嗎
有,比如說歐米茄狀態欄,或者下載一個手機桌面都行,歐米茄狀態欄的話,有些是英文,你下載了,安裝歐米茄狀態,然後打開,進入歐米茄狀態欄後,點擊最右上方的那個開關就可以了,當然下載360手機桌面是最好的選擇
『肆』 android 標題欄,狀態欄和導航欄的區別
就我理解,標題欄是手機左上最頂上,顯示中國移動,安全衛士,或者當前運行軟體的地方,手機的頂部。右邊顯示信號,電量,網速等等是狀態欄。
下拉就會出現通知欄。
至於導航欄是手機最下面的返回,HOME,主頁三個鍵,有些是一個按鈕。
『伍』 android導航欄高度是多少
屏幕高度都是包括了狀態欄和導航欄的高度的
2.獲取控制項尺寸
如果我們在onCreate()方法里直接調用getWidth()、getMeasuredWidth()獲得的尺寸為0,這是由於在onCreate()中,我們的控制項還沒有畫好,等onCreate()執行完了,我們的控制項才被測量出來,我們可以注冊一個監聽器,用來監聽測量結果
ViewTreeObserver vto = mButton.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { @Override
public void onGlobalLayout() { //移除上一次監聽,避免重復監聽
mButton.getViewTreeObserver().removeGlobalOnLayoutListener(this); //在這里調用getHeight()獲得控制項的高度
buttonHeight = mButton.getHeight();
}
});1234567891011
3.獲得狀態欄/通知欄的高度
public static int getStatusBarHeight(Context context){
Class<?> c = null;
Object obj = null;
Field field = null; int x = 0, statusBarHeight = 0; try {
c = Class.forName("com.android.internal.R$dimen");
obj = c.newInstance();
field = c.getField("status_bar_height");
x = Integer.parseInt(field.get(obj).toString());
statusBarHeight = context.getResources().getDimensionPixelSize(x);
} catch (Exception e1) {
e1.printStackTrace();
} return statusBarHeight;
}12345678910111213141516
4.獲得導航欄高度
public int getNavigationBarHeight(Activity activity) {
Resources resources = activity.getResources(); int resourceId = resources.getIdentifier("navigation_bar_height","dimen", "android"); //獲取NavigationBar的高度
int height = resources.getDimensionPixelSize(resourceId); return height;
『陸』 android裡面主界面下面有個導航欄,這個導航欄是不是要應該和主界面放在2個activity裡面
你問的是TabHost的使用,導航的activity是單獨的activity,那個主界面是你設置默認顯示的某個tab,所以感覺像是主界面,程序啟動進入的是導航欄的activity
『柒』 如何實現Android透明導航欄
導航欄和狀態欄只有在桌面和鎖屏可以設置透明運行程序的時候都是黑色的 查看原帖>>
『捌』 android 系統導航欄如何浮在界面上
可以重新寫一個activity浮在街面上。
『玖』 android 怎麼實現左側導航欄
Android左側推出導航菜單可以讓Activity繼承PopupWindow類來實現的彈出窗體,布局可以根據自己定義設計。彈出效果主要使用了translate和alpha樣式實現。具體的做法是下列代碼:
第一步:設計彈出窗口xml:
Xml代碼
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical"
>
<LinearLayout
android:id="@+id/pop_layout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical"
android:layout_alignParentBottom="true"
android:background="@drawable/btn_style_alert_dialog_background"
>
<Button
android:id="@+id/btn_take_photo"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:layout_marginTop="20dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="拍照"
android:background="@drawable/btn_style_alert_dialog_button"
android:textStyle="bold"
/>
<Button
android:id="@+id/btn_pick_photo"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:layout_marginTop="5dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="從相冊選擇"
android:background="@drawable/btn_style_alert_dialog_button"
android:textStyle="bold"
/>
<Button
android:id="@+id/btn_cancel"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:layout_marginTop="15dip"
android:layout_marginBottom="15dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="取消"
android:background="@drawable/btn_style_alert_dialog_cancel"
android:textColor="#ffffff"
android:textStyle="bold"
/>
</LinearLayout>
</RelativeLayout>
第二步:創建SelectPicPopupWindow類繼承PopupWindow:
Java代碼
import android.app.Activity;
import android.content.Context;
import android.graphics.drawable.ColorDrawable;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.PopupWindow;
public class SelectPicPopupWindow extends PopupWindow {
private Button btn_take_photo, btn_pick_photo, btn_cancel;
private View mMenuView;
public SelectPicPopupWindow(Activity context,OnClickListener itemsOnClick) {
super(context);
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mMenuView = inflater.inflate(R.layout.alert_dialog, null);
btn_take_photo = (Button) mMenuView.findViewById(R.id.btn_take_photo);
btn_pick_photo = (Button) mMenuView.findViewById(R.id.btn_pick_photo);
btn_cancel = (Button) mMenuView.findViewById(R.id.btn_cancel);
//取消按鈕
btn_cancel.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//銷毀彈出框
dismiss();
}
});
//設置按鈕監聽
btn_pick_photo.setOnClickListener(itemsOnClick);
btn_take_photo.setOnClickListener(itemsOnClick);
//設置SelectPicPopupWindow的View
this.setContentView(mMenuView);
//設置SelectPicPopupWindow彈出窗體的寬
this.setWidth(LayoutParams.FILL_PARENT);
//設置SelectPicPopupWindow彈出窗體的高
this.setHeight(LayoutParams.WRAP_CONTENT);
//設置SelectPicPopupWindow彈出窗體可點擊
this.setFocusable(true);
//設置SelectPicPopupWindow彈出窗體動畫效果
this.setAnimationStyle(R.style.AnimBottom);
//實例化一個ColorDrawable顏色為半透明
ColorDrawable dw = new ColorDrawable(0xb0000000);
//設置SelectPicPopupWindow彈出窗體的背景
this.setBackgroundDrawable(dw);
//mMenuView添加OnTouchListener監聽判斷獲取觸屏位置如果在選擇框外面則銷毀彈出框
mMenuView.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
int height = mMenuView.findViewById(R.id.pop_layout).getTop();
int y=(int) event.getY();
if(event.getAction()==MotionEvent.ACTION_UP){
if(y<height){
dismiss();
}
}
return true;
}
});
}
}
第三步:編寫MainActivity類實現測試:
Java代碼
import android.app.Activity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
public class MainActivity extends Activity {
//自定義的彈出框類
SelectPicPopupWindow menuWindow;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView tv = (TextView) this.findViewById(R.id.text);
//把文字控制項添加監聽,點擊彈出自定義窗口
tv.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//實例化SelectPicPopupWindow
menuWindow = new SelectPicPopupWindow(MainActivity.this, itemsOnClick);
//顯示窗口
menuWindow.showAtLocation(MainActivity.this.findViewById(R.id.main), Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL, 0, 0); //設置layout在PopupWindow中顯示的位置
}
});
}
//為彈出窗口實現監聽類
private OnClickListener itemsOnClick = new OnClickListener(){
public void onClick(View v) {
menuWindow.dismiss();
switch (v.getId()) {
case R.id.btn_take_photo:
break;
case R.id.btn_pick_photo:
break;
default:
break;
}
}
};
}
上述的代碼實現了從底部彈出,也可以根據PopupWindow類設置從左下部彈出。
Android的對話框有兩種:PopupWindow和AlertDialog。它們的不同點在於:
AlertDialog的位置固定,而PopupWindow的位置可以隨意
AlertDialog是非阻塞線程的,而PopupWindow是阻塞線程的
PopupWindow的位置按照有無偏移分,可以分為偏移和無偏移兩種;按照參照物的不同,可以分為相對於某個控制項(Anchor錨)和相對於父控制項。具體如下
showAsDropDown(View anchor):相對某個控制項的位置(正左下方),無偏移
showAsDropDown(View anchor, int xoff, int yoff):相對某個控制項的位置,有偏移
showAtLocation(View parent, int gravity, int x, int y):相對於父控制項的位置(例如正中央Gravity.CENTER,下方Gravity.BOTTOM等),可以設置偏移或無偏移
『拾』 android導航欄怎麼設置哪個顯示
實現方式應該有好幾種: 1、使用Layout_weight固定上下大小,中間的ListView同樣,同時中間的listView把它的高度可以設置成一個固定值。 2、還可以使用ViewPager控制項,也需要使用layout_weight按比例把界面分了。