获取activty title bar:
TextView actionTitle = (TextView) findViewById(com.android.internal.R.id.action_bar_title);
View actionTitle = getWindow().getDecorView().findViewById(getResources().getIdentifier("android:id/action_bar_title", null, null));
- private static int flagsDate = DateUtils.FORMAT_SHOW_DATE;
- private static int flagsTime = DateUtils.FORMAT_SHOW_TIME ;
- private static int flagsWeek = DateUtils.FORMAT_SHOW_WEEKDAY;
- String dateStr = (String)DateUtils.formatDateTime(context, System.currentTimeMillis(), flagsDate);//5月11日
- String timeStr = (String)DateUtils.formatDateTime(context, System.currentTimeMillis(), flagsTime);//16:40
- String weekStr = (String)DateUtils.formatDateTime(context, System.currentTimeMillis(), flagsWeek);//星期二
12小时格式时,获取上午还是下午:
String smPmStr = DateUtils.getAMPMString(Calendar.getInstance().get(Calendar.AM_PM));//上午(下午)
12小时时间格式时,只显示时间,不显示“上午“这样的字符串:
- private final static String M12 = "h:mm";
- private final static String M24 = "kk:mm";
- formatTime = android.text.format.DateFormat.is24HourFormat(context)? M24 : M12;
- String timeStr = (String) DateFormat.format(formatTime,System.currentTimeMillis());
将系统当前事件,转化为所需格式:
- long dateTaken = System.currentTimeMillis();
- if (dateTaken != 0) {
- String datetime = DateFormat.format("yyyy:MM:dd kk:mm:ss", dateTaken).toString();
- Log.e(TAG,"datetime : " + datetime);
- }
如果为今天,则显示时间,如果不是今天则显示日期
- private String getDate(long dateTime)
- {
- int flags = 0;
- String date = "";
- if (DateUtils.isToday(dateTime))
- {
- flags = DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_24HOUR;
- date = (String)DateUtils.formatDateTime(mContext, dateTime, flags);
- }
- else
- {
- flags = DateUtils.FORMAT_SHOW_DATE;
- date = (String)DateUtils.formatDateTime(mContext, dateTime, flags);
- }
- return date;
- }
在源码短信息模块中MessageUtils.java中有这样一个函数,与上面的功能相同:
- public static String formatTimeStampString(Context context, long when, boolean fullFormat) {
- Time then = new Time();
- then.set(when);
- Time now = new Time();
- now.setToNow();
- // Basic settings for formatDateTime() we want for all cases.
- int format_flags = DateUtils.FORMAT_NO_NOON_MIDNIGHT |
- DateUtils.FORMAT_ABBREV_ALL |
- DateUtils.FORMAT_CAP_AMPM;
- // If the message is from a different year, show the date and year.
- if (then.year != now.year) {
- format_flags |= DateUtils.FORMAT_SHOW_YEAR | DateUtils.FORMAT_SHOW_DATE;
- } else if (then.yearDay != now.yearDay) {
- // If it is from a different day than today, show only the date.
- format_flags |= DateUtils.FORMAT_SHOW_DATE;
- } else {
- // Otherwise, if the message is from today, show the time.
- format_flags |= DateUtils.FORMAT_SHOW_TIME;
- }
- // If the caller has asked for full details, make sure to show the date
- // and time no matter what we've determined above (but still make showing
- // the year only happen if it is a different year from today).
- if (fullFormat) {
- format_flags |= (DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_TIME);
- }
- return DateUtils.formatDateTime(context, when, format_flags);
- }
软键盘显示消失及取反
- InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
- View view = getCurrentFocus();
- if (view != null){
- // imm.showSoftInput(view, 0); //显示软键盘
- imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
- // imm.hideSoftInputFromWindow(view.getWindowToken(), 0);//隐藏软键盘 // InputMethodManager.HIDE_NOT_ALWAYS);
- }
或者
getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);
或者
- public void hideInputMethod() {
- InputMethodManager imm = getInputMethodManager();
- if (imm != null) {
- imm.hideSoftInputFromWindow(getWindowToken(), 0);
- }
- }
- public void showInputMethod() {
- InputMethodManager imm = getInputMethodManager();
- if (imm != null) {
- imm.showSoftInput(this, 0);
- }
- }
相关推荐
在Android开发中,有时我们需要对软键盘的显示和隐藏状态进行监控,以便调整布局或实现特定功能。这个需求通常出现在创建聊天应用、编辑器或者其他需要根据输入法状态改变界面布局的场景。本篇文章将深入探讨如何在...
在Android开发中,有时我们需要对软键盘的显示和隐藏进行监听,以便于调整布局或实现特定功能。本文将详细介绍如何在Android中实现软键盘监听,以及如何获取软键盘的高度,同时考虑了`android:windowSoftInputMode`...
在AndroidManifest.xml中,为对应的Activity设置此属性,系统会在软键盘弹出时尝试调整Activity窗口大小,以便显示更多内容。例如: ```xml android:name=".YourActivity" android:windowSoftInputMode=...
而软键盘的管理和显示则是移动应用用户体验的关键因素之一。本文将深入探讨如何在Android中正确处理Dialog与软键盘的交互。 首先,让我们了解Android Dialog的基本用法。Dialog是基于Activity的,通常用于显示一些...
软键盘是Android系统提供的一个虚拟键盘输入设备,用于用户在触摸屏设备上进行文本输入。当应用程序中的输入框获得焦点时,软键盘会自动弹出供用户输入。然而,在某些情况下,我们需要手动控制软键盘的显示与隐藏,...
android edittext不弹出软键盘三种方法“: 方法一: 在AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为adjustUnspecified|stateHidden 例如: <activity android:name=".Main" android:...
Unity3D android 拉起android软键盘 最近公司项目有一个手机VR展厅业务,用U3D做VR场景还可以做到,后面要加个2D的线下预定页面,就涉及到3D 2D界面转换,首先考虑u3d作为插件,不考虑升级客户端,更新U3D资源来升级...
在Android开发中,自定义软键盘和理解系统键盘的工作原理是提升用户体验的重要一环。本文将深入探讨如何创建自定义软键盘以及系统键盘的源码分析。 首先,让我们来看看自定义软键盘的实现过程。在Android中,我们...
在软键盘弹出后随即弹出自定义的PopuWindow在其上方,里面还给PopuWindow加入了显示 和消失的动画,另外实现了对软键盘显示和隐藏状态的监听,以及对其高度的测量,需要做些逻辑处理的话可以直接在里面写相关的代码...
`InputMethodManager`是Android系统提供的管理输入法的类,可以用来控制软键盘的显示和隐藏。虽然它不直接提供按键监听,但我们可以通过监听IME(Input Method Editor)的动作事件来间接实现监听。通过重写`Activity...
软键盘弹出之后,计算软键盘的高度,将自定义的View设置于软键盘之上。代码重点计算了如何让软键盘显示与隐藏,并且,还解决了如何点击软键盘与自定义View 之外的区域,让软键盘隐藏而不会与其他控件的点击事件冲突...
在Android开发中,软键盘的焦点管理是一项关键任务,特别是在电视应用中,用户通常依赖遥控器而非触摸屏进行交互。本文将深入探讨如何在Android软键盘上实现焦点移动,并支持上下左右按键以及回车键输入,以拉丁IME...
Android系统默认情况下,当EditText获取焦点时,会自动弹出软键盘。然而,在某些场景下,如全屏模式或滑动浏览时,开发者可能需要控制软键盘的显示与隐藏。这可以通过监听EditText的FocusChange事件来实现,然后...
Android系统在软键盘弹出或隐藏时会触发Activity的布局过程,我们可以通过监听这个过程来判断软键盘的状态。描述中提到的方法是通过重写`onLayout`方法来实现这一功能。 `onLayout`方法是View类的一个回调方法,它...
在Android开发中,有时我们可能需要在软键盘上添加自定义功能,比如一个搜索按钮或者一个额外的操作选项。这个需求通常出现在输入框交互较多的应用场景,例如聊天应用、搜索引擎等。下面将详细介绍如何在Android的软...
Android 软键盘调整界面问题解决方案 Android 软键盘的问题是 Android 开发中常见的问题之一。软键盘的出现可能会导致界面被顶起或被遮挡,从而影响用户体验。解决这个问题需要了解软键盘的属性和调整方法。 首先...
在开发时遇到一个问题,需要对软...但是由于android不直接提供对软键盘打开与关闭操作的监听器,所以必须自己来写一个关于软键盘打开/关闭的监听器。 原理是通过对OnGlobalLayoutListener()来实现对软键盘的状态监听器
本文将深入探讨如何解决这一问题,并实现软键盘与悬浮窗的联动,即软键盘弹出时悬浮窗跟随升高,软键盘关闭时悬浮窗随之消失。 首先,我们要理解Android系统的窗口层级管理。Android系统中的窗口(Window)分为多个...
在Android开发中,当用户在应用中输入时,软键盘的弹出可能会遮挡底部的控件,导致用户体验下降。为了改善这种情况,开发者通常需要实现一个功能,使得底部的视图(如工具栏、按钮等)能够随着软键盘的弹出而上移。...