Android popupwindow 弹出的位置问题】的更多相关文章

在Android开发中,需要用到PopupWindow这个类.在初始化完成,显示之前,都需要获得这个对象的width,height去计算popupWindow弹出的位置. 这个时候会发现取得的width和height都是-2:使用popupWindow.getContentView().getMeasuredWidth()和popupWindow.getContentView().getMeasuredHeight()取得的值都是0.如下面的代码: activity_main.xml <?xml…
 Android屏幕底部弹出DialogFragment(3) 附录文章1,2的DialogFragment是常规的DialogFragment,但是现在的一些Android开发中,往往需要从底部弹出一个功能对话框供用户选择使用.这种底部弹出的对话框开源项目也很多,比如附录文章3,4,5,6,7,8,9,10,11.对Android原生的DialogFragment进行改造,也可以实现底部弹出的对话框(面板).重点是要设置重载DialogFragment的Gravity位置:Gravity.…
今天在练习PopupWindow弹出框的时候,打算在界面加载的时候将弹出框展现出来并显示在指定的view下面. 初步方法是直接在OnResume方法里面直接执行showPopupWindows方法. 但是报“Unable to add window -- token null is not valid; is your activity running?” 原因参考:http://cb269267.iteye.com/blog/1787779 总结下原因如下:popupwindow必须要指定一个…
Winfrom 窗体弹出位置设定,其实就是两种模式,第一种模式是通过Winform提供的属性来设定:第二种模式是自定义,可以相对于软件本身,也可以是相对于屏幕. 一.第一种模式 使用Winform提供的属性来设定窗体弹出的位置 举个例子 Form form1=new Form(); form1.StartPosition = FormStartPosition.CenterScreen;//窗体位置在屏幕中间 form1.StartPosition = FormStartPosition.Cen…
在Android中 我们经常会用AlertDialog来显示对话框.通过这个对话框是显示在屏幕中心的.但在某些程序中,要求对话框可以显示在不同的位置.例如,屏幕的上 方或下方.要实现这种效果.就需要获得对话框的Window对象,获得这个Window对象有多种方法.最容易的就是直接通过AlertDialog类的 getWindow方法来获得Window对象. AlertDialog dialog = new AlertDialog.Builder(this).setTitle("title&quo…
在Android中我们经常会用AlertDialog来显示对话框.通过这个对话框是显示在屏幕中心的.但在某些程序中,要求对话框可以显示在不同的位置.例如,屏幕的上方或下方.要实现这种效果.就需要获得对话框的Window对象,获得这个Window对象有多种方法.最容易的就是直接通过AlertDialog类的getWindow方法来获得Window对象. AlertDialog dialog = new AlertDialog.Builder(this).setTitle("title")…
第一步 : 布局文件 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" an…
使用PopupWindow实现一个悬浮框,悬浮在Activity之上,显示位置可以指定 首先创建pop_window.xml: <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app…
使用PopupWindow来实现弹出框,并且带有动画效果 首先自定义PopupWindow public class LostPopupWindow extends PopupWindow { public Lost lost; public void onLost(Lost lost){ this.lost = lost; } private View conentView; public View getConentView() { return conentView; } public L…
假设做一个弹出的控件,我们能够进行加入view: 写class SatelliteMenu extends FrameLayout private void init(Context context, AttributeSet attrs, int defStyle) { inflate(context, R.layout.sat_main, this); imgMain = (ImageView) findViewById(R.id.sat_main); if(attrs != null){…
下面的PopupWindow  的高是相对于屏幕高设计,宽是获取的某一个控件的宽设置,位置位于某控件的上方,红色部分是设置弹出时屏幕变暗的. //设置contentView View contentView = LayoutInflater.from(this).inflate(R.layout.popwindow_submit, null); photoPopWindow = new PopupWindow(contentView, WindowManager.LayoutParams.MAT…
为了实现EditText编辑的时候弹出软键盘标题头不动,底部编辑框,上移在这总结: RelativeLayout在弹出软键盘的时候先寻找android:layout_alignParentBottom属性是否有控件设置为true,如果有将此控件向上移动键盘高度的位置,布局也就位于软键盘的上面,其他控件如果有相对于该控件的位置,也就相对的移动了,如果没有则什么都不做,可以看做布局是一层一层盖上去的,键盘弹出的时候,只把符合要求的当层的布局向上移动,所以如果我们按照这种方法写,肯定是可以的. 还有一…
项目中经常需要底部弹出框,这里我整理一下其中我用的比较顺手的一个方式(底部弹出一个横向满屏的dialog). 效果图如下所示(只显示关键部分): 步骤如下所示: 1.定义一个dialog的布局(lay_share.xml) <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/androi…
Android弹出/隐藏系统软键盘的代码如下: InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(inputComment, InputMethodManager.SHOW_FORCED); // 强制打开软键盘 imm.hideSoftInputFromWindow(inputComment.getWindowToken(…
当我们弹出一个Dialog时候,如果这个Dialog需要输入数据,然后确定后又需要关闭输入法,一般系统的hide,跟show方法总会有各种问题,最霸道的解决方法就是写一个定时器,定时弹出或者关闭输入法. import java.util.Timer; import java.util.TimerTask; import android.content.Context; import android.view.View; import android.view.inputmethod.InputM…
前言: 做项目时,感觉Android自带的弹出框样式比较丑,很多应用都是自己做的弹出框,这里也试着自己做了一个. 废话不说先上图片: 实现机制 1.先自定义一个弹出框的样式 2.自己实现CustomDialog类,继承自Dialog,实现里面方法,在里面加载自定义样式的弹出框: 3.使用时,与使用Dialog一样 具体代码 dialog_normal_layout.xml样式文件 <?xml version="1.0" encoding="utf-8"?>…
前言 最近做项目时碰到一个问题,在意见反馈里面,提交按钮写到顶部,当用户输入反馈意见或者邮箱手机号时,弹出的输入法会上移整个页面,导致提交按钮显示不了. 很明显,这样的界面是非常不友好的,找了一些资料无果后,只好自己想办法解决,经过多次尝试后终于实现了想要的效果.特记录在此,希望能帮助需要帮助的人.效果图如下,写的不好勿怪. 效果图                   解决思路 使用ScrollView将中间的内容包住,再把ScrollView的滚动条去掉 代码展示 视图文件 : <Scroll…
今天在使用Android弹出对话框的时候,报了一个unable to add window错误,我的代码如下 new AlertDialog.Builder(getApplicationContext()).setTitle("提示").setMessage("你确定要删除么?") .setPositiveButton("确定", new DialogInterface.OnClickListener() { public void onClic…
Android 针对版本更新,需要做全局的弹出(需求:版本更新只需要在 App 内全局弹出就可以),思路是使用 AlertDialog ,然后设置 setType 为 TYPE_ALERT_WINDOW ,但是在国产设备上有些是无法弹出来的,需要用户到设置页面去设置,这种的操作难度会比较的大. 参考文章:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/1017/3589.html 继续 Google ,看到的另外一种思路,不再…
方法一: 在弹出dialog的时候不用$('#dialogDiv').dialog('open');打开.用$('#dialogDiv').window('open');打开.再用window的resize方法重新布局就可以了.类似:var top = $("#struBtn").offset().top + 30;var left = $("#struBtn").offset().left;$('#dialogDiv').window('open').window…
1.在QQ一些APP当中有是弹出一个半透明的搜索框的,其实这种效果就是很多种方法,自定义一个Dialog,或者直接将activity的背景变成半透明的也可以的. 下面就是将activity变成半透明的方法.效果图如下:…
本文来自网易云社区 作者:孙有军 当一个activity中含有输入框时,我们点击输入框,会弹出输入法界面,整个界面的变化效果与manifest中对应设置的android:windowSoftInputMode属性有关,一般可以设置的值如下, <activity android:windowSoftInputMode=["stateUnspecified","stateUnchanged",  "stateHidden", "sta…
  于是就小小的模仿了下自己写了这个这样的效果,主要代码如下:dlg = new AlertDialog.Builder(context).create();dlg.show();dlg.getWindow().setContentView(R.layout.alert_style);LayoutInflater factory = LayoutInflater.from(context);View view = factory.inflate(R.layout.alert_style, nul…
searchEditView.setFocusable(true); searchEditView.setFocusableInTouchMode(true); searchEditView.requestFocus(); Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() { InputMethodManager inputManager = (InputMethodManager) sea…
一.C#中弹出窗口位置 加入命名空间 using System.Drawing using System.Windows.Forms 假定窗口名为form1,则 //窗体位置在屏幕中间 form1.StartPosition = FormStartPosition.CenterScreen; //窗体在其父窗口中间 form1.StartPosition = FormStartPosition.CenterParent; //窗体在有其空间的Location属性而定 form1.StartPos…
注冊上下文菜单:(长按弹出一个菜单) 第一种创建方法(与长按事件结合): public class MainActivity extends Activity { private TextView username,password; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState)…
实现将一个View显示在某一位置,而且是浮于当前窗口 首先要有一个要显示的view的布局,可以是任意View,包括ViewGroup <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_paren…
先上效果图: 先写Layout文件: <?xml version="1.0" encoding="utf-8"? > <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent&qu…
phonegap android 当页面内容比较多,表单超出屏幕范围时,点击输入,输入法会遮盖住表单框,而且无法向上滑动. 经过测试发现,是由于config.xml中设置了 FullScreen 的全屏设置造成的.只需将 res/xml/config.xml中的 <preference name="fullscreen" value="true" /> 改为 <preference name="fullscreen" value…
<ScrollView android:id="@+id/top_bar" android:layout_width="fill_parent" android:layout_height="wrap_content" > ... </ScrollView> ... 或者 <activity android:name=".ui.MainActivity" android:label="@…