小编Ron*_*nie的帖子

如何动态改变形状颜色?

我有

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
   android:shape="rectangle">
    <solid
       android:color="#FFFF00" />
    <padding android:left="7dp"
        android:top="7dp"
        android:right="7dp"
        android:bottom="7dp" />
</shape>

<TextView
    android:background="@drawable/test"
    android:layout_height="45dp"
    android:layout_width="100dp"
    android:text="Moderate"
/>
Run Code Online (Sandbox Code Playgroud)

所以现在我希望这个形状根据我从Web服务调用中获取的信息来改变颜色.所以它可能是黄色或绿色或红色或其他任何取决于我从网络电话呼叫收到的颜色.

如何更改形状的颜色?根据这些信息?

android shape android-layout xamarin.android

135
推荐指数
7
解决办法
12万
查看次数

如何缩小按钮上的drawable?

如何使按钮上的可绘制更小?图标太大,实际上高于按钮.这是我正在使用的代码:

    <Button
    android:background="@drawable/red_button"
    android:drawableLeft="@drawable/s_vit"
    android:id="@+id/ButtonTest"
    android:gravity="left|center_vertical" 
    android:text="S-SERIES CALCULATOR"
    android:textColor="@android:color/white"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:layout_marginLeft="25dp"
    android:layout_marginRight="25dp"
    android:drawablePadding="10dp">
    </Button>
Run Code Online (Sandbox Code Playgroud)

鞋面是它应该看起来的样子,它现在看起来越低.

鞋面是它应该看起来的样子,它现在看起来越低.

我尝试了这个,但没有显示图像.:-(

    Resources res = getResources();
    ScaleDrawable sd = new ScaleDrawable(res.getDrawable(R.drawable.s_vit), 0, 10f, 10f);
    Button btn = (Button) findViewById(R.id.ButtonTest);
    btn.setCompoundDrawables(sd.getDrawable(), null, null, null);
Run Code Online (Sandbox Code Playgroud)

android scale compound-drawables

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

在LinearLayout中放置3个按钮以占用相等的空间

我希望有三个按钮水平连续占用相同数量的可用空间.我用过android:layout_gravity.问题是什么?

layout xml:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:weightSum="1.0"
    >

    <Button android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/Bg"
            android:background="@drawable/button_red"
            android:layout_weight=".2"
            android:layout_gravity="left"
    />
    <Button android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/Bm"
            android:background="@drawable/button_red"
            android:layout_weight=".2"
            android:textColor="#ffffff"
            android:layout_gravity="center"
    />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/button_red"
        android:layout_weight=".2"
        android:text="@string/Bf"
        android:layout_gravity="right"
    />

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

如果有人看到什么错,谢谢.

android android-layout

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

Android:在Android相机预览中叠加

我正在使用Camera API并调用相机.

我想在相机预览的顶部显示标题(用于标记).标题是jpeg图像.

可能吗?任何帮助赞赏.

提前致谢.

我的代码如下.

public class CameraActivity extends Activity {
    @Override
    protected void onPause() {

        super.onPause();
    }

    private static final int CAMERA_PIC_REQUEST = 2500;
    private Bitmap image2;
    private Bitmap bm;
    public static String imagepath;
    public static int x=1;
    private RdmsDbAdapter dbHelper;
    @Override



    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.header);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        //caling new incident
        if(IncidentFormActivity.incident_id == null || IncidentFormActivity.isDisable==true){
            //DBAdapter instance created and connection opened. 
            dbHelper = new RdmsDbAdapter(CameraActivity.this);
            dbHelper.open();

            //setting up flags
            NewIncidentHelper nih = new NewIncidentHelper();
            nih.setUpNewIncident(); …
Run Code Online (Sandbox Code Playgroud)

camera android header

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

如何从Bitmap获取Uri对象

在某个点击事件中,我要求用户添加图像.所以我提供两种选择:

  1. 要从库中添加.
  2. 从相机中单击新图像.

我的目标是保留与这些图像相关的"uri"列表.

如果用户选择了图库,那么我会得到图像uri(这非常简单).但如果他选择相机,那么在拍完照片之后,我就会得到那张照片的Bitmap对象.

现在我如何将该Bitmap对象转换为uri,或者换句话说,如何获取该位图对象的相对Uri对象?

谢谢.

android uri bitmap

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

Android:class not found exception:android.support.v4.app.FragmentPager

在我的代码中我导入android.support.v4.view.ViewPager 但是ClassNotFoundException: android.support.v4.view.ViewPager当我将内容视图设置为此xml文件时,我得到了一个:

...
 <android.support.v4.app.FragmentPager 
     android:layout_height="0px" 
     android:layout_width="match_parent" 
     android:layout_weight="1" 
     android:id="@+id/pager"> 
     </android.support.v4.app.FragmentPager>
...
Run Code Online (Sandbox Code Playgroud)

android classnotfoundexception

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

Android视图中的getOnClickListener()

我需要Android中的Views的getOnClickListener().这样我就可以为我的视图分配一个临时的OnClickListener.我想这样使用它:

private View.OnClickListener oldListener;

public void assignTempListener(View view) {
    oldListener = view.getOnClickListener(); // doesn't exist

    view.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // some code

            v.setOnClickListener(oldListener);
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

问题是这个功能不存在.我也无法从View继承创建此方法,因为所有类型的视图都可以传递给assignTempListener.还有其他方法可以使用它吗?

编辑:在我的代码中犯了一个小错误.

android onclicklistener

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

尝试构建正确的SOAP请求

我一直在努力尝试使用kso​​ap2为Android构建正确的SOAP请求数小时而没有运气.理想的请求如下所示:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <AuthorizationToken xmlns="http://www.avectra.com/2005/">
      <Token>string</Token>
    </AuthorizationToken>
  </soap:Header>
  <soap:Body>
    <ExecuteMethod xmlns="http://www.avectra.com/2005/">
      <serviceName>string</serviceName>
      <methodName>string</methodName>
      <parameters>
        <Parameter>
          <Name>string</Name>
          <Value>string</Value>
        </Parameter>
      </parameters>
    </ExecuteMethod>
  </soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)

我使用以下代码生成我的请求:

    SoapObject request = new SoapObject(NAMESPACE, METHOD);
    request.addProperty("serviceName", SERVICENAME);
    request.addProperty("methodName", METHODNAME);

    SoapObject nestedParameters = new SoapObject(NAMESPACE, "parameters");
    SoapObject param = new SoapObject(NAMESPACE, "Parameter");
    param.addProperty("Name", name);
    param.addProperty("Value", value);
    nestedParameters.addSoapObject(param);
    request.addSoapObject(nestedParameters);

    SoapSerializationEnvelope envelope = 
            new SoapSerializationEnvelope(SoapEnvelope.VER11);
    envelope.setOutputSoapObject(request);
    envelope.dotNet = true;
    envelope.implicitTypes = true;

    envelope.headerOut = new Element[1];
    Element header = new Element().createElement(NAMESPACE, "AuthorizationToken");
    Element …
Run Code Online (Sandbox Code Playgroud)

java xml android soap android-ksoap2

13
推荐指数
1
解决办法
9647
查看次数

加载ListView的速度更快,比Viewholder方法更快

为listView扩展视图时,最好是在.xml文件中没有android:text的所有textViews以及这会影响速度多少?那么ViewStubs会更快吗?

当使用8个没有android:text的textViews和使用android:text ="@ string/abc"膨胀LinearLayout时,这会改变什么吗?请注意,我正在重复使用视图,所以也许只有10个被充气然后重复使用我不知道.

我正在开发一款中兴刀片,这样一台600Mhz的CPU而不是四核......

android android-listview

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

php/java for android之间的数据编码/解码

我必须解码从php服务器接收的base64编码数据.

服务器使用'base64_encode'对数据进行编码.

在我的Android应用程序中,我使用android.utils.Base64类来进行解码.

原始加密数据="†+Ü] M(‡=ñö"

php中的Base64编码数据给出...... - "hisP3F1NBCgIAocQCD3x9g =="
android中的Base64编码数据给出 - "4oCgKw/DnF1NBCgIAuKAoRAIPcOxw7Y ="

如您所见,java编码的字符串比PHP编码的字符串长.请提出宝贵的建议.我需要找出他们的默认编码格式.

如何从两者中获取相同的编码字符串.?

java/android代码:

String encrypted = "†+Ü]M(‡=ñö";
byte[] encoded = Base64.encode(encrypted.getBytes(), Base64.DEFAULT);
String str = new String(encoded); //str = "4oCgKw/DnF1NBCgIAuKAoRAIPcOxw7Y="  
Run Code Online (Sandbox Code Playgroud)

php java base64 android

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