标签: android-widget

单击事件上的android小部件

我在android中创建了widget并且它成功运行,但现在我想在widget的click事件上使用,以便我可以从中打开新的活动.

帮我

android android-widget

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

如何将EditText inputType指定为数字和密码?

我有以下内容:

<EditText
    android:inputType="number"
    android:password="true"
    ....
</EditText>
Run Code Online (Sandbox Code Playgroud)

我收到一条警告,"android:password"已被弃用,我应该使用inputType.有没有办法将inputType指定为数字和密码?

android android-widget

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

当应用程序进入前台时,保持EditText的键盘打开/关闭状态

我有一个Activity在配置更改(所需)上重新创建的.我有一个在布局中使用单个DialogFragment调用.setRetainInstance(true)EditText

在DialogFragment中,onActivityCreated我打电话给:

getDialog().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);
Run Code Online (Sandbox Code Playgroud)

A)如果我打开键盘然后当我将应用程序放入背景然后将其带到foregournd然后我希望键盘仍然显示.

B)如果我关闭键盘(EditText仍有焦点并显示所需行为的光标),那么如果我将应用程序放入背景然后将其带到前台,我希望键盘仍然关闭.

我似乎无法同时实现A)和B).当我将应用程序带到前台时,键盘始终处于关闭状态.我试过.SOFT_INPUT_STATE_ALWAYS_VISIBLE但键盘始终打开.

提前感谢您对我如何实现这一目标的任何建议.我也希望在旋转时保持这种键盘状态,但是我要离开那一天了.彼得.

编辑 请注意,我不希望防止在配置改变而重新创建活动.

我还试验了WindowManager.LayoutParams.SOFT_INPUT_STATE_UNCHANGED在手机上旋转时保持键盘打开/关闭状态(单窗格布局)但是a)不适用于双窗格布局b)在将应用程序带到前台时没有保持键盘状态.

android android-widget

24
推荐指数
2
解决办法
9510
查看次数

TextInputLayout和TextInputEditText之间的区别

需要知道TextInputEditText和TextInputLayout之间究竟有什么区别,我们应该何时使用其中一个.

android android-widget android-studio android-design-library

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

如何在RatingBar中设置星星的自定义大小

我已经添加了一种风格

<style name="myRatingBar" parent="@android:style/Widget.RatingBar">
    <item name="android:minHeight">32dp</item>
    <item name="android:maxHeight">32dp</item>
</style>
Run Code Online (Sandbox Code Playgroud)

然而,不是缩放星星,我收到了星星:

在此输入图像描述

有没有办法改变星星的大小?

android android-widget

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

Android Widgets:RemoteViews上的动画?

我没有太多成功将动画应用于视图中的视图RemoteViews.

为了简单起见,假设我有一个带有a ImageView和a 的小部件Button.单击按钮时,我想向ImageView添加一个简单的动画(例如旋转).

因为我不能findViewById()像在an中那样使用Activity并且RemoteViews没有动画的setter,所以我不知道该怎么办.

我正在考虑使用新的布局替换窗口小部件的RemoteViews,类似于原始布局,但是这个已经加载了动画.我可以这样做吗?是否可以在布局中嵌入动画?

对于WidgetProvider,代码将是这样的:

Intent intent = new Intent(context, RotateService.class);
PendingIntent pendingIntent = PendingIntent.getService(context, 0, intent, 0);

RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.a_widget);
views.setOnClickPendingIntent(R.id.a_button, pendingIntent);

appWidgetManager.updateAppWidget(appWidgetId, views);
Run Code Online (Sandbox Code Playgroud)

然后在RotateService中:

ComponentName myWidget = new ComponentName(this, MyWidget.class);
AppWidgetManager manager = AppWidgetManager.getInstance(this);
RemoteViews newViews = buildNewRemoteViewsWithAnimation();
manager.updateAppWidget(myWidget, newViews);
Run Code Online (Sandbox Code Playgroud)

还有其他建议吗?

animation android widget android-widget

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

Android 2.3.3列表视图页脚背景

这个很奇怪.我有一个列表视图,它是相对布局的一部分.我已为此相对布局设置了背景,并使列表视图背景变为透明.

现在,一切都很好,直到今天早上.即使我的列表视图中只有一行,我也可以看到整个屏幕都覆盖了我的自定义背景.

然后,我获得了Verizon Motorola Droid X for 2.3.3的更新(之前为2.2).一旦更新,我再次启动我的应用程序,现在发生了什么.

如果我的列表视图只有一行,我看到它下面有一个白色区域而不是我的自定义背景.但如果它说100行并因此覆盖整个屏幕我将不会看到奇怪的白色背景.我的相对布局的宽度和高度设置为"fill_parent".

我在底部发布了我的XML.有没有其他人遇到过这个问题,或者我犯了一些非常愚蠢的错误.

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:background = "@drawable/background" 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <ListView   android:id = "@+id/listQueue"
                android:layout_width = "fill_parent"
                android:layout_height = "fill_parent"
                android:layout_below = "@id/homeScreenBanner"
                android:background="@android:color/transparent"
                android:divider="@drawable/separator"
                android:scrollingCache="false"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

编辑:

我想我找到了解决这个问题的方法:

将layout_height属性更改为wrap_content,它就像一个魅力.:)

更改后的行. android:layout_height = "wrap_content"

android android-widget android-layout android-listview

22
推荐指数
2
解决办法
6182
查看次数

Android小部件在开发后未显示在列表中

我正在用小部件升级我的应用程序.这不是我做过的第一个小部件.我总是遇到奇怪的问题,但最终小部件在列表中出现了问题.

这是我到目前为止所做的:

  • 创建了widget_layout.xml
  • 创建了widget_info.xml
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"  
    android:minWidth="110dp"
    android:minHeight="30dp"
    android:updatePeriodMillis="86400000"
    android:initialLayout="@layout/widget_layout"
    android:resizeMode="none">
</appwidget-provider>
Run Code Online (Sandbox Code Playgroud)
  • 创建了WidgetProvider类
  • 在该<application>部分中添加了要显示的小部件(由于某种原因,此处无法粘贴清单片段,它只是没有显示,请在此处查看代码)

仍然无法在小部件列表中找到小部件.我在真实设备上调试应用程序.我正在使用库项目,但是小部件文件,但我在项目中直接运行.这可能发生什么?

android android-widget

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

如何使用getView()方法以及调用它的位置?

我是Android开发的新手,并且一直关注Android网站上提供的教程.我目前正在阅读Views的教程部分,特别是Grid Views:Hello,Grid View Tutorial.

我无法理解如何通过适配器进行查看.我知道您必须覆盖适配器类中的getView()方法,并在此方法中定义视图的设置方式.我不明白getView()实际上被调用的地方是什么?也许我在这里有错误的心态,但在下面的代码中(网格视图教程)我没有看到任何对getView()的调用(或适配器类中使用的任何其他东西,如getCount()) .

main.xml中

<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/gridview"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"
    android:columnWidth="90dp"
    android:numColumns="auto_fit"
    android:verticalSpacing="10dp"
    android:horizontalSpacing="10dp"
    android:stretchMode="columnWidth"
    android:gravity="center" />
Run Code Online (Sandbox Code Playgroud)

Start.java

package com.examples.hellogridlayout;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;

public class Start extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    GridView gridview = (GridView)findViewById(R.id.gridview);
    gridview.setAdapter(new ImageAdapter(this));

    gridview.setOnItemClickListener(new OnItemClickListener(){
        public void onItemClick(AdapterView<?> parent,View v, int position, long …
Run Code Online (Sandbox Code Playgroud)

android android-widget

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

自定义格式编辑文本输入android接受信用卡号

如何使编辑文本接受格式的输入

4digitnumber-4dignumber-4dignumber-4dignumber   
Run Code Online (Sandbox Code Playgroud)

代码

text.addTextChangedListener(new TextWatcher() {
    int len = 0;
    String string ;
    @Override

    public void afterTextChanged(Editable s) {

        text.setOnKeyListener(new OnKeyListener()
        {   public boolean onKey(View v, int keyCode, KeyEvent event)
            {              
                    if (keyCode == KeyEvent.KEYCODE_DEL)
                    {

                    }
                    else{

                        string = text.getText().toString();
                        len = string.length()+1;
                        if(len%5==0){text.append("-");}

             }

                return false;      }   });
    }
});
Run Code Online (Sandbox Code Playgroud)

添加时工作正常,但删除或编辑会导致问题.

android android-widget android-layout

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