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按比例把界面分了。