`

android 日期时间格式转换;软键盘显示消失;获取系统title

 
阅读更多

获取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));

 

 

[java] view plaincopy
 
  1. private static int flagsDate = DateUtils.FORMAT_SHOW_DATE;  
  2. private static int flagsTime = DateUtils.FORMAT_SHOW_TIME ;  
  3. private static int flagsWeek = DateUtils.FORMAT_SHOW_WEEKDAY;  
  4. String dateStr = (String)DateUtils.formatDateTime(context, System.currentTimeMillis(), flagsDate);//5月11日  
  5. String timeStr = (String)DateUtils.formatDateTime(context, System.currentTimeMillis(), flagsTime);//16:40  
  6. String weekStr = (String)DateUtils.formatDateTime(context, System.currentTimeMillis(), flagsWeek);//星期二  

 

 

12小时格式时,获取上午还是下午:

String smPmStr = DateUtils.getAMPMString(Calendar.getInstance().get(Calendar.AM_PM));//上午(下午)

 

12小时时间格式时,只显示时间,不显示“上午“这样的字符串:

 

[java] view plaincopy
 
  1. private final static String M12 = "h:mm";  
  2. private final static String M24 = "kk:mm";  
  3. formatTime = android.text.format.DateFormat.is24HourFormat(context)? M24 : M12;  
  4. String timeStr = (String) DateFormat.format(formatTime,System.currentTimeMillis());  

 

 

将系统当前事件,转化为所需格式:

 

[java] view plaincopy
 
  1. long dateTaken = System.currentTimeMillis();  
  2.             if (dateTaken != 0) {  
  3.                 String datetime = DateFormat.format("yyyy:MM:dd kk:mm:ss", dateTaken).toString();  
  4.                 Log.e(TAG,"datetime : " +  datetime);  
  5.                   
  6.             }  

 

 

如果为今天,则显示时间,如果不是今天则显示日期

 

[java] view plaincopy
 
  1. private String getDate(long dateTime)  
  2.         {  
  3.             int flags = 0;  
  4.             String date = "";  
  5.               
  6.             if (DateUtils.isToday(dateTime))  
  7.             {  
  8.                 flags = DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_24HOUR;  
  9.                 date = (String)DateUtils.formatDateTime(mContext, dateTime, flags);  
  10.             }   
  11.             else  
  12.             {  
  13.                 flags = DateUtils.FORMAT_SHOW_DATE;  
  14.                 date = (String)DateUtils.formatDateTime(mContext, dateTime, flags);  
  15.             }  
  16.             return date;  
  17.         }  

 

 

在源码短信息模块中MessageUtils.java中有这样一个函数,与上面的功能相同:

 

[java] view plaincopy
 
  1. public static String formatTimeStampString(Context context, long when, boolean fullFormat) {  
  2.         Time then = new Time();  
  3.         then.set(when);  
  4.         Time now = new Time();  
  5.         now.setToNow();  
  6.         // Basic settings for formatDateTime() we want for all cases.  
  7.         int format_flags = DateUtils.FORMAT_NO_NOON_MIDNIGHT |  
  8.                            DateUtils.FORMAT_ABBREV_ALL |  
  9.                            DateUtils.FORMAT_CAP_AMPM;  
  10.         // If the message is from a different year, show the date and year.  
  11.         if (then.year != now.year) {  
  12.             format_flags |= DateUtils.FORMAT_SHOW_YEAR | DateUtils.FORMAT_SHOW_DATE;  
  13.         } else if (then.yearDay != now.yearDay) {  
  14.             // If it is from a different day than today, show only the date.  
  15.             format_flags |= DateUtils.FORMAT_SHOW_DATE;  
  16.         } else {  
  17.             // Otherwise, if the message is from today, show the time.  
  18.             format_flags |= DateUtils.FORMAT_SHOW_TIME;  
  19.         }  
  20.         // If the caller has asked for full details, make sure to show the date  
  21.         // and time no matter what we've determined above (but still make showing  
  22.         // the year only happen if it is a different year from today).  
  23.         if (fullFormat) {  
  24.             format_flags |= (DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_TIME);  
  25.         }  
  26.         return DateUtils.formatDateTime(context, when, format_flags);  
  27.     }  

 

 

软键盘显示消失及取反

 

[java] view plaincopy
 
  1. InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);    
  2.              View view = getCurrentFocus();    
  3.              if (view != null){    
  4.                 // imm.showSoftInput(view, 0); //显示软键盘    
  5.                  imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);  
  6.                 // imm.hideSoftInputFromWindow(view.getWindowToken(), 0);//隐藏软键盘  // InputMethodManager.HIDE_NOT_ALWAYS);  
  7.              }  

 

 

或者

getWindow().setSoftInputMode(
               WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);

 

或者

 

[java] view plaincopy
 
  1. public void hideInputMethod() {  
  2.         InputMethodManager imm = getInputMethodManager();  
  3.         if (imm != null) {  
  4.             imm.hideSoftInputFromWindow(getWindowToken(), 0);  
  5.         }  
  6.     }  

 

 

 

[java] view plaincopy
 
  1. public void showInputMethod() {  
  2.         InputMethodManager imm = getInputMethodManager();  
  3.         if (imm != null) {  
  4.             imm.showSoftInput(this0);  
  5.         }  
  6.     }  
分享到:
评论

相关推荐

    android监听软键盘状态

    在Android开发中,有时我们需要对软键盘的显示和隐藏状态进行监控,以便调整布局或实现特定功能。这个需求通常出现在创建聊天应用、编辑器或者其他需要根据输入法状态改变界面布局的场景。本篇文章将深入探讨如何在...

    android中监听软键盘的弹出与隐藏,并获取软键盘的高度

    在Android开发中,有时我们需要对软键盘的显示和隐藏进行监听,以便于调整布局或实现特定功能。本文将详细介绍如何在Android中实现软键盘监听,以及如何获取软键盘的高度,同时考虑了`android:windowSoftInputMode`...

    Android 解决软键盘遮挡登陆按钮

    在AndroidManifest.xml中,为对应的Activity设置此属性,系统会在软键盘弹出时尝试调整Activity窗口大小,以便显示更多内容。例如: ```xml android:name=".YourActivity" android:windowSoftInputMode=...

    Android Dialog与软键盘的正确打开方式

    而软键盘的管理和显示则是移动应用用户体验的关键因素之一。本文将深入探讨如何在Android中正确处理Dialog与软键盘的交互。 首先,让我们了解Android Dialog的基本用法。Dialog是基于Activity的,通常用于显示一些...

    android 关闭软键盘

    软键盘是Android系统提供的一个虚拟键盘输入设备,用于用户在触摸屏设备上进行文本输入。当应用程序中的输入框获得焦点时,软键盘会自动弹出供用户输入。然而,在某些情况下,我们需要手动控制软键盘的显示与隐藏,...

    android edittext不弹出软键盘三种方法

    android edittext不弹出软键盘三种方法“: 方法一: 在AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为adjustUnspecified|stateHidden 例如: <activity android:name=".Main" android:...

    Unity3D android 拉起android软键盘

    Unity3D android 拉起android软键盘 最近公司项目有一个手机VR展厅业务,用U3D做VR场景还可以做到,后面要加个2D的线下预定页面,就涉及到3D 2D界面转换,首先考虑u3d作为插件,不考虑升级客户端,更新U3D资源来升级...

    android 自定义软键盘or系统键盘源码

    在Android开发中,自定义软键盘和理解系统键盘的工作原理是提升用户体验的重要一环。本文将深入探讨如何创建自定义软键盘以及系统键盘的源码分析。 首先,让我们来看看自定义软键盘的实现过程。在Android中,我们...

    android自定义View在软键盘上方,监听软键盘的状态一个测量其高度

    在软键盘弹出后随即弹出自定义的PopuWindow在其上方,里面还给PopuWindow加入了显示 和消失的动画,另外实现了对软键盘显示和隐藏状态的监听,以及对其高度的测量,需要做些逻辑处理的话可以直接在里面写相关的代码...

    Android监听输入法软键盘按键demo

    `InputMethodManager`是Android系统提供的管理输入法的类,可以用来控制软键盘的显示和隐藏。虽然它不直接提供按键监听,但我们可以通过监听IME(Input Method Editor)的动作事件来间接实现监听。通过重写`Activity...

    android 自定义View于弹出软键盘之上

    软键盘弹出之后,计算软键盘的高度,将自定义的View设置于软键盘之上。代码重点计算了如何让软键盘显示与隐藏,并且,还解决了如何点击软键盘与自定义View 之外的区域,让软键盘隐藏而不会与其他控件的点击事件冲突...

    android软键盘上移动焦点

    在Android开发中,软键盘的焦点管理是一项关键任务,特别是在电视应用中,用户通常依赖遥控器而非触摸屏进行交互。本文将深入探讨如何在Android软键盘上实现焦点移动,并支持上下左右按键以及回车键输入,以拉丁IME...

    Android 实现软键盘与EditText的交互.zip

    Android系统默认情况下,当EditText获取焦点时,会自动弹出软键盘。然而,在某些场景下,如全屏模式或滑动浏览时,开发者可能需要控制软键盘的显示与隐藏。这可以通过监听EditText的FocusChange事件来实现,然后...

    Android判断软键盘是否弹出

    Android系统在软键盘弹出或隐藏时会触发Activity的布局过程,我们可以通过监听这个过程来判断软键盘的状态。描述中提到的方法是通过重写`onLayout`方法来实现这一功能。 `onLayout`方法是View类的一个回调方法,它...

    android软键盘上添加一个按钮

    在Android开发中,有时我们可能需要在软键盘上添加自定义功能,比如一个搜索按钮或者一个额外的操作选项。这个需求通常出现在输入框交互较多的应用场景,例如聊天应用、搜索引擎等。下面将详细介绍如何在Android的软...

    android 软键盘把界面顶起

    Android 软键盘调整界面问题解决方案 Android 软键盘的问题是 Android 开发中常见的问题之一。软键盘的出现可能会导致界面被顶起或被遮挡,从而影响用户体验。解决这个问题需要了解软键盘的属性和调整方法。 首先...

    Android软键盘打开/关闭监听器

    在开发时遇到一个问题,需要对软...但是由于android不直接提供对软键盘打开与关闭操作的监听器,所以必须自己来写一个关于软键盘打开/关闭的监听器。 原理是通过对OnGlobalLayoutListener()来实现对软键盘的状态监听器

    软键盘遮住悬浮窗的EditText、软键盘消失无法监听返回键

    本文将深入探讨如何解决这一问题,并实现软键盘与悬浮窗的联动,即软键盘弹出时悬浮窗跟随升高,软键盘关闭时悬浮窗随之消失。 首先,我们要理解Android系统的窗口层级管理。Android系统中的窗口(Window)分为多个...

    Android 设置一个底部控件view随着软键盘的弹出而上移

    在Android开发中,当用户在应用中输入时,软键盘的弹出可能会遮挡底部的控件,导致用户体验下降。为了改善这种情况,开发者通常需要实现一个功能,使得底部的视图(如工具栏、按钮等)能够随着软键盘的弹出而上移。...

Global site tag (gtag.js) - Google Analytics