标签: android-widget

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

Android主屏幕小部件动画

我正在寻找创建一个支持动画的小部件,理想情况下通过android.view.animation框架,否则通过在后台服务触发的代码中设置远程视图的属性.

有没有人对这些方法中的任何一种都有任何经验,而且我正在尝试做什么,或者我是否正在走向死胡同?

animation android android-widget

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

RadioGroup,setEnabled(false)无效!

我使用setEnabled(false)来设置它无法,但它不起作用.在此方法之后,RadioGroup.IsEnabled()的值为false.价值改变了.

该代码来自Android编程指南.Ps:Spinner组件使用setEnabled(false)很好.

代码如下:

package com.example.testviews;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioGroup;

public class TestRadioGroup extends Activity {


@Override
public void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.radiogroup);

    final RadioGroup testRadioGroup = (RadioGroup) findViewById(R.id.testRadioGroup);

    final Button changeEnabledButton = (Button) findViewById(R.id.changeEnabledButton);
    changeEnabledButton.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            changeEnabled(testRadioGroup);
        }
    });

    final Button changeBgColorButton = (Button) findViewById(R.id.changeBackgroundColorButton);
    changeBgColorButton.setOnClickListener(new OnClickListener() {

        public void onClick(View v) { …
Run Code Online (Sandbox Code Playgroud)

android android-widget

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

Android - 将数据附加到视图

在我的应用程序中,我在表中创建动态行,就像在本教程中一样:http: //en.androidwiki.com/wiki/Dynamically_adding_rows_to_TableLayout

 for(int i = startDay; i < startDay + 7; i++){

      /* Create a TextView to be the row-content. */
      TextView day = new TextView(this);
      day.setText(Integer.toString(i));
      day.setLayoutParams(new LayoutParams(
                LayoutParams.FILL_PARENT,
                LayoutParams.WRAP_CONTENT));

      day.setOnClickListener(new OnClickListener() {
          @Override
          public void onClick(View v) {
              Log.i("Listener: ", "Click");
          }
Run Code Online (Sandbox Code Playgroud)

所以现在当我单击TextView时我可以注册click事件,但是如何确定单击了哪个TextView?

不仅仅是我在事件中获得的对象,而是点击了哪一天的数据?

理想情况下,我希望将数据附加到我动态创建的每个视图.像Javascript jQuery中的data()方法.

现在我只能看到解决这个问题的一种方法 - 创建TextView时添加带数据的id,点击时 - 获取id并解析它以获取我的数据.但它让我感到丑陋.

有没有办法将任意数据附加到android视图?

android android-widget

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

如何在Android画布上对剪辑边界进行抗锯齿处理?

我正在使用Android的android.graphics.Canvas来绘制一个环.我的onDraw方法剪切画布为内圈创建一个洞,然后在洞上绘制整个外圈:

    clip = new Path();
    clip.addRect(outerCircle, Path.Direction.CW);
    clip.addOval(innerCircle, Path.Direction.CCW);

    canvas.save();
    canvas.clipPath(clip);
    canvas.drawOval(outerCircle, lightGrey);
    canvas.restore();
Run Code Online (Sandbox Code Playgroud)

结果是一个带有漂亮,抗锯齿外边缘和锯齿状,丑陋内边缘的戒指:

别名

我能做些什么来消除内缘?

我不想通过在中间画一个灰色圆圈来欺骗,因为对话框略微透明.(这种透明度在其他背景上并不那么微妙.)

android android-widget

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

将活动显示为对话框时如何自定义宽度和高度

如果我已经定义了一个Activity:

public class DialogActivity extends Activity{

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(dialog_activity.xml);
    }


}
Run Code Online (Sandbox Code Playgroud)

想像对话框一样显示上面的活动,所以在AndroidManifest.xml文件中,我声明这个活动如下:

<activity android:name=".DialogActivity" android:theme="@android:style/Theme.Dialog"/>
Run Code Online (Sandbox Code Playgroud)

此时一切都很好,我DialogActivity表现为对话.

问题是如何自定义宽度和高度DialogActivity使其更像一个小对话框?(目前它默认占据大部分屏幕)

----------------------------更新--------------------- -

我定义了一个自定义主题如下:

<style name="myDialog" parent="@android:style/Theme.Dialog">
        <item name="android:windowFrame">@null</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowContentOverlay">@null</item>

        <item name="android:width">100dip</item> 
        <item name="android:height">100dip</item>

</style>
Run Code Online (Sandbox Code Playgroud)

然后,DialogActivityAndroidManifest.xml中声明为.

<activity android:name=".DialogActivity" android:theme="@style/myDialog"/>
Run Code Online (Sandbox Code Playgroud)

DialogActivity现在甚至占据整个屏幕:(.宽度高度定义:

<item name="android:width">100dip</item>
Run Code Online (Sandbox Code Playgroud)

在主题上没有任何效果,为什么?

android android-widget android-manifest android-emulator android-layout

30
推荐指数
1
解决办法
4万
查看次数

改变搜索栏拇指的大小

我正在使用一个drawable for seekbar thumb with

android:thumb="@drawable/thumb"
Run Code Online (Sandbox Code Playgroud)

如何在倾角单元中设置此拇指的大小?因为我使用了类似于搜索栏的样式

<style name="CustomSeekBar">
    <item name="android:indeterminateOnly">false</item>
    <item name="android:minHeight">8dip</item>
    <item name="android:maxHeight">8dip</item>
    <item name="android:thumbOffset">8dip</item>
</style> 
Run Code Online (Sandbox Code Playgroud)

我想要拇指的12dip高度和宽度.

android android-widget android-layout

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

在android中以编程方式将下划线文本设置为TextView

我想知道如何在android中将下划线文本设置为TextView?请注意我没有能力设置带有预先填充的字符串的strings.xml是否有任何方法可以在Android中使用纯Java代码添加它.

android android-widget

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

如何在Gallery Widget中停止滚动?

我将一些图像加载到图库中.现在我可以滚动但是一旦开始滚动滚动就不会停止.我希望画廊只是滚动到下一个图像,然后停止,直到用户再次执行滚动手势.

这是我的代码

import android.widget.ImageView;
import android.widget.Toast;
 import android.widget.AdapterView.OnItemClickListener;

public class GalleryExample extends Activity {

private Gallery gallery;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

     gallery = (Gallery) findViewById(R.id.examplegallery);
     gallery.setAdapter(new AddImgAdp(this));

     gallery.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView parent, View v, int position, long id) {

            Toast.makeText(GalleryExample.this, "Position=" + position, Toast.LENGTH_SHORT).show();
        }
    });

}

public class AddImgAdp extends BaseAdapter {
    int GalItemBg;
    private Context cont;


    private Integer[] Imgid = {
            R.drawable.a_1, R.drawable.a_2, R.drawable.a_3, R.drawable.a_4, R.drawable.a_5, R.drawable.a_6, R.drawable.a_7
    };

    public AddImgAdp(Context c) …
Run Code Online (Sandbox Code Playgroud)

android scroll gallery android-widget

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

Android - 围绕ImageView设置边框

我有一个固定宽度和高度的单元格,让它为100x100px.在那个单元格中,我想要显示一个ImageView带边框的边框.
我的第一个想法是将背景资源放入ImageView,并添加1dp的填充以创建边框效果:

<LinearLayout
        android:layout_width="100dp"
        android:layout_height="100dp" >

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/image_border"
        android:padding="1dp"
        android:src="@drawable/test_image" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

显然这应该有效,但它没有,或者至少没有预期的那样.
问题是ImageView背景填充整个100x100px单元格的空间,因此,如果图像的宽度小于100px,则顶部和底部边框将显得更大.

注意黄色边框,我需要它在ImageView周围正好1px:

在此输入图像描述

任何帮助,想法,任何建议都非常感谢.

android android-widget android-emulator android-layout android-imageview

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