小编Foe*_*nix的帖子

自动显示键盘

请解释一下软键盘的问题.例如,我在我的活动或对话片段或片段活动上有一个EditText,无论如何.这里是:

<EditText
    android:id="@+id/edPswrd"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ems="10"
    android:inputType="textPassword" >

    <requestFocus />
</EditText>
Run Code Online (Sandbox Code Playgroud)

当它第一次显示我没有看到软键盘并且必须按editText才能获得焦点并且键盘出现.另一个活动是不同的,当它出现在屏幕上时,键盘在没有任何帮助的情况下加载.我以为

<requestFocus />

意味着EditText将被聚焦并且键盘将出现,但我错了.

如何管理哪些组件将获得焦点,键盘将自动显示.

java keyboard android focus android-activity

42
推荐指数
5
解决办法
5万
查看次数

在代码中设置ListView行高

我有Activity一个ListView基于SimpleCursorAdapter和一个按钮.当我单击按钮时,我希望行高变大.我决定TextView在按钮上使用高度OnClick:

TextView tvRow = (TextView) findViewById(R.id.tvRow);
tvRow.setHeight(20);
Run Code Online (Sandbox Code Playgroud)

但它只更改列表的第一行.

我可以在改变高度AdaptergetView方法:

TextView tvRow = (TextView) view.findViewById(R.id.tvRow);
tvRow.setHeight(20);
Run Code Online (Sandbox Code Playgroud)

但这不是我需要的功能; 按钮需要这个OnClick.

如何ListView通过点击按钮来更改行高?也许甚至是一招......谢谢你的时间.

更新:

当我把这个代码放在SimpleCursorAdapter一切工作正常,但在方法getViewBaseAdapter:

@Override
  public View getView(int position, View convertView, ViewGroup parent) {
   View view = convertView;
if (view == null) {
  view = lInflater.inflate(R.layout.itemF, parent, false);
}
...   
 final LayoutParams params = view.getLayoutParams();
            if (params == null) { …
Run Code Online (Sandbox Code Playgroud)

height android listview button

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

将datetime转换为字符串,错误的小时

我在我的Android应用程序(java)中这样做:

String sdt_ = DateFormat.format("yyyyMMdd  HH:mm", dt_).toString();
Run Code Online (Sandbox Code Playgroud)

但我得到了这个

01-16 14:31:13.308: D/ThS(25810): dt_ = Wed Jan 16 13:28:00 GMT+00:00 2013
01-16 14:31:23.758: D/ThS(25810): sdt_ = 20130116  HH:28
Run Code Online (Sandbox Code Playgroud)

如果我改变HH,我会得到这个

sdt_ = 20130116  01:28
Run Code Online (Sandbox Code Playgroud)

但我需要这个

sdt_ = 20130116  13:28
Run Code Online (Sandbox Code Playgroud)

java format datetime android

6
推荐指数
1
解决办法
3万
查看次数

删除除第一个活动以外的所有活动

我想对主页按钮进行编程,因此它将删除Activities堆栈中的所有按钮,除了一个。我在这里做了:如何完成堆栈上的每个活动,除了 Android 中的第一个活动

public boolean onOptionsItemSelected(MenuItem item) {
    int itemId = item.getItemId();
    switch (itemId) {
    case android.R.id.home:
        Intent intent = new Intent(this, AMainActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
        startActivity(intent);
        break;
...
Run Code Online (Sandbox Code Playgroud)

但这种方式不适合我,因为它删除了所有Activities(包括第一个)并再次启动第一个。例如 - 如果我在 中检查用户密码onCreate(),他会再次被问到。如何Activities从堆栈中删除所有内容,但第一个不会被“触及”?

java android android-activity

5
推荐指数
1
解决办法
1327
查看次数

获取具有特定ID的行的ListView中的位置

我有一个ListView,SimpleCursorAdapter我想知道如何获得ListView一个身份证的位置?我需要它来执行单击列表中的特定行,如下所示

lv.performItemClick(lv, pos, lv.getItemIdAtPosition(pos));
Run Code Online (Sandbox Code Playgroud)

android click android-listview simplecursoradapter

0
推荐指数
1
解决办法
1159
查看次数