小编Ebo*_*ike的帖子

SoftKeyboard隐藏EditText

我有一个布局,使用EditText让用户搜索数据库并填充ListView.EditText大约是屏幕顶部的2/3(位于ImageView上方,后面是一些介绍文本.)

问题是软键盘隐藏了EditText,因此用户无法看到他正在键入的内容.(我禁用了自动建议.)

我已经尝试过LinearLayout,RelativeLayout,paddings和不同的对齐/居中,但我仍然无法让它正常工作.EditText要么隐藏,要么被推离屏幕顶部,要么"压扁"并扭曲.

建议???

一种可能的解决方法是将EditText移动到屏幕顶部.但是,这与我给出的图形设计不同.

另一种可能的解决方法是让我在全屏幕上打开软键盘(不过如何确定).这仍然会隐藏EditText,但之后我可以重新启用自动建议,这样用户就可以看到他正在输入的内容......有点......因为他只能看到他正在输入内容的建议.

这是我最近的尝试.请参阅"introFrame".

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="wrap_content" 
 android:layout_height="fill_parent"
 android:orientation="vertical">

 <LinearLayout android:id="@+id/titleContainer"
  android:orientation="horizontal" android:layout_width="fill_parent"
  android:layout_height="wrap_content">
  <TextView android:text="@string/title_string"
   android:textSize="15sp" android:textColor="#FFFFFF"
   android:textStyle="bold" android:paddingLeft="5dp"
   android:layout_height="fill_parent" android:layout_width="wrap_content" />
 </LinearLayout>

 <FrameLayout 
 android:id="@+id/introFrame"
 android:layout_width="fill_parent" 
 android:layout_height="wrap_content"
 android:gravity="center_horizontal" >
 <ImageView 
  android:src="@drawable/main_search_image"
  android:scaleType="center"
  android:layout_gravity="center"
  android:layout_height="wrap_content"
  android:layout_width="wrap_content"/>
 <LinearLayout
  android:orientation="vertical"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_gravity="center"
  android:paddingTop="140dp" >
  <LinearLayout android:id="@+id/introSearchContainer"
   android:orientation="horizontal" 
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_gravity="center_vertical" >
   <LinearLayout 
    android:orientation="horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1" >
    <EditText android:id="@+id/intro_search_box" 
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:hint="     Enter keyword     " 
     android:imeOptions="actionGo"   
     android:inputType="textFilter" 
     android:maxLines="1" />
   </LinearLayout>
   <LinearLayout 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" …
Run Code Online (Sandbox Code Playgroud)

android android-softkeyboard android-edittext

20
推荐指数
2
解决办法
3万
查看次数

使用selectableItemBackground时的android.view.InflateException

在给我的布局充气时,我得到了这个例外:

E AndroidRuntime: android.view.InflateException: Binary XML file line #11: Binary XML file line #11: Error inflating class <unknown>
E AndroidRuntime:        at android.view.LayoutInflater.inflate(LayoutInflater.java:539)
E AndroidRuntime:        at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
E AndroidRuntime:        at com.myapp.view.MyRecyclerAdapter.onCreateViewHolder(MyRecyclerAdapter:80)
E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:5288)
E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4551)
E AndroidRuntime:        at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4461)
E AndroidRuntime:        at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:1962)
Run Code Online (Sandbox Code Playgroud)

日志中没有"由...引起",但我添加了代码来捕获异常并调用,getCause()直到它返回null,这是事件序列:

android.view.InflateException: Binary XML file line #11: Binary XML file line #11: Error inflating class <unknown>
android.view.InflateException: Binary XML file line #11: Error inflating class <unknown>
Error: Binary XML file line #11: …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-view android-attributes

17
推荐指数
2
解决办法
2724
查看次数

使用String值创建变量名称

这是一个简单的问题(我认为)

让我说我有这个代码(假设我有一个狗类)

String name = "dog";
dog name = new dog();
Run Code Online (Sandbox Code Playgroud)

如何让java将name识别为String并命名对象dog?

java variables class object

16
推荐指数
2
解决办法
8万
查看次数

Android:禁用旋转90°,但旋转180°

我想创建一个Android应用程序(用于平板电脑),只应以横向显示,例如应用程序应忽略旋转90°,但支持旋转180°.

在清单中添加android:screenOrientation ="landscape"会导致应用忽略所有旋转(即使180°旋转),即将设备旋转180°会使应用程序颠倒.

如果没有android:screenOrientation属性,我的应用程序将在所有四个位置"正确"显示.将设备旋转180°会垂直翻转UI.水平.

旋转设备时,会创建以下日志消息(这可能有帮助吗?):

[...]: INFO/WindowManager(1290): Setting rotation to 1, animFlags=0
Rotation is a value between 0 and 3 representing the current orientation.
Run Code Online (Sandbox Code Playgroud)

总结:是否可以启用应用程序以支持横向方向?

android orientation screen-orientation

15
推荐指数
1
解决办法
7637
查看次数

如何通过id获取原始资源文件名?

我在res/raw中有.ogg文件,我已经实现了一个将文件保存到SD卡的功能,我想从原始文件中设置文件名.

java android

14
推荐指数
2
解决办法
1万
查看次数

与Google地方信息/地理编码API建立交集

我正在尝试使用Google Places API找到最近的两条街道(基本上是指示最近的交叉点).但是,任何结果只会返回一条"路线",如果有的话.

我想我可以用+或X模式做5个查询,但这很麻烦,不可靠,当然会更快地达到查询限制.

我很想说这是一个刻意的举动,因为API并不是用于导航系统之类的东西(我不想做),但我仍然希望有一种符合TOS标准的方式来获得交集.

旁注 - 似乎指定"types = route"永远不会返回任何结果,这进一步加剧了我的怀疑,即Places实际上只是用于实际的POI,而不是用于导航,尽管服务条款没有提及任何明确的在这方面的限制.

编辑:正如克里斯指出的那样,Geocoding API专门用于地理编码,但除了通过多个查询之外,我仍然没有看到获得最近的十字路口的方法.

google-geocoding-api google-places-api

13
推荐指数
2
解决办法
2万
查看次数

在2.2中流式传输shoutcast流中断的android代码

以下代码在Android 2.1update1上运行正常 -

package com.troubadorian.android.teststreaming;



import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.Gallery;
import android.widget.ImageButton;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.Gallery.LayoutParams;
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.ViewSwitcher;

public class TestStreaming extends Activity 
{
 private Button streamButton;

 private ImageButton playButton;

 private TextView textStreamed;

 private boolean isPlaying;

 private StreamingMediaPlayer audioStreamer;

 @Override
 public void onCreate(Bundle savedInstanceState)
 {
  super.onCreate(savedInstanceState);
  // requestWindowFeature(Window.FEATURE_NO_TITLE);

  setContentView(R.layout.main);
  initControls();


 }
 protected void …
Run Code Online (Sandbox Code Playgroud)

android shoutcast audio-streaming

12
推荐指数
1
解决办法
8019
查看次数

如何在v7中创建Widget.Holo.Spinner样式的小部件

我有一个Button我想要像Holo风格的微调器一样的样式,即在右下角有一个三角形加下划线 - 例如内置的联系人应用程序.

在此输入图像描述

最简单的方法是创建按钮并将其设置为样式style="@android:style/Widget.Holo.Spinner"- 这样可以获得我想要的视觉效果.

但是,我的应用程序旨在支持Android 2.x,因此我无法使用原生Holo样式.AppCompat有几个与微调器相关的样式,比如@style/Widget.AppCompat.Spinner和其他样式,但它们看起来不一样 - 它们只是在窗口小部件右边缘的中心创建一个小三角形,没有下划线.

我可以通过创建自己的9补丁背景来捏造它,但我无法想象v7的AppCompat中缺少这种Holo微调器样式.有没有我可以使用的风格,或者任何其他方式来创建我想要的视觉效果而不创建我自己的可绘制资源?

android android-widget android-layout

11
推荐指数
1
解决办法
4475
查看次数

有没有一个好方法来获得即将到来的星期三的日期?

有没有一个好方法来获得即将到来的星期三的日期?也就是说,如果今天是星期二,我想在本周得到星期三的日期; 如果今天是星期三,我想得到下周三的日期; 如果今天是星期四,我想在接下来的一周得到星期三的日期.

谢谢.

java calendar date

10
推荐指数
2
解决办法
1万
查看次数

抛出:IllegalArgumentException?为什么?

任何人都可以向我解释为什么会出现这种错误,或者更好的我如何处理它?我无法重现它.这是1000次中发生的错误之一.

背景:用户正在尝试登录,显示进度对话框,在异步任务中发送http请求,取消进度对话框.发生错误,应用FC.

LoginActivity.java

 255:   private void dismissProgress() {  
 256:     if (mProgress != null) {  
 257:         mProgress.dismiss();  
 258:         mProgress = null;  
 259:     }  
 260:   }  

java.lang.IllegalArgumentException: View not attached to window manager
at android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:391)
at android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:236)
at android.view.Window$LocalWindowManager.removeView(Window.java:432)
at android.app.Dialog.dismissDialog(Dialog.java:278)
at android.app.Dialog.access$000(Dialog.java:71)
at android.app.Dialog$1.run(Dialog.java:111)
at android.app.Dialog.dismiss(Dialog.java:268)
at se.magpern.LoginActivity.dismissProgress(LoginActivity.java:257)
at se.magpern.LoginActivity.access$5(LoginActivity.java:255)
at se.magpern.LoginActivity$DoTheLogin.onPostExecute(LoginActivity.java:293)
at se.magpern.LoginActivity$DoTheLogin.onPostExecute(LoginActivity.java:1)
at android.os.AsyncTask.finish(AsyncTask.java:417)
at android.os.AsyncTask.access$300(AsyncTask.java:127)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:429)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:144)
at android.app.ActivityThread.main(ActivityThread.java:4937)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

android

9
推荐指数
2
解决办法
1万
查看次数