小编Mys*_*icϡ的帖子

Android:如何重绘图形元素?

我创建了一个扩展View的类RoundIcon,该类包含setIconImage()方法:

public void setIconImage(int imageFromResources) {
    iconImage = BitmapFactory.decodeResource(getResources(), imageFromResources);
    iconWidth = iconImage.getWidth();
    iconHeight = iconImage.getHeight();
    refreshDrawableState();
}
Run Code Online (Sandbox Code Playgroud)

并且有一个方法onDraw():

@Override
protected void onDraw(Canvas canvas) {

    if(px == 0 || py == 0)
    {
        px = 50;
        py = 50;
    }


    canvas.drawCircle(px, py, circleRadius, circlePaint);
    canvas.save();

    if(iconImage != null)
    {
        int cardinalX = px - iconWidth/2;
        int cardinalY = py - iconHeight/2;
        canvas.drawBitmap(iconImage, cardinalX, cardinalY, iconPaint);
    }

    canvas.restore();
}
Run Code Online (Sandbox Code Playgroud)

问题是每次从主活动调用方法setIconImage()时都不执行onDraw()函数,因此图标在用户界面中不会改变.

有没有人知道如何修改代码,以便每次调用方法setIconImage时重绘图像?

user-interface android refresh

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

加载位图时出现内存不足错误

我有一个Android应用程序与3 acitivtys:

A1 - 开始 - > A2 - 开始 - > A3 - 完成他的过程:开始 - > A1

(所以我不"完成();"一个应用程序.我用"startActivity(..);"用户交互后的整个时间开始下一个活动)

所以这3个活动中有一个循环.在每个活动中,我显示位于SD卡上的3-9张图片,我使用以下功能加载:

try
{
    Uri selectedImageURI = Uri.parse(strImagePath);
    File imgFile = new  File(getRealPathFromURI(selectedImageURI, c));
    Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
    ivTmp.setImageBitmap(myBitmap);
}catch (Exception e)
{
    return null;
}
Run Code Online (Sandbox Code Playgroud)

这一切都有效.但有时候(通过我的活动循环几次后),我的应用程序崩溃了..

Logcat告诉我:

01-16 13:42:15.863: DEBUG/dalvikvm(23161): GC_BEFORE_OOM freed 10K, 9% free 59019K/64400K, paused 29ms, total 30ms
01-16 13:42:15.863: ERROR/dalvikvm-heap(23161): Out of memory on a 8018704-byte allocation.
01-16 13:42:15.863: ERROR/AndroidRuntime(23161): FATAL EXCEPTION: main
        java.lang.OutOfMemoryError
        at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
        at …
Run Code Online (Sandbox Code Playgroud)

android bitmap out-of-memory

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

如何从xml文件加载AnimationDrawable

我有一些自定义类BitmapStorage,没有附加到任何View或其他任何东西 - 一个实用程序.我有born_animation.xml文件,其中包含带有动画帧的<animation-list>:

<animation-list oneshot="true" >
    <item drawable="@drawable/frame01" />
    <item drawable="@drawable/frame02" />
</animation-list>
Run Code Online (Sandbox Code Playgroud)

我想使用Resources类将动画从xml文件加载为AnimationDrawable(因此它会对我进行所有解析),提取位图并将它们放到我的自定义存储类中.

我有的问题是:

Resources res = context.getResources(); 
AnimationDrawable drawable = (AnimationDrawable)res.getDrawable(R.drawable.born_animation); 
assertTrue( drawable != null ); <= fails! it's null 
Run Code Online (Sandbox Code Playgroud)

WTF?有人可以解释一下吗?代码编译好.所有资源都已到位.

我尝试了另一种方法 - 使用ImageView进行解析(如开发指南中所述)

ImageView view = new ImageView(context); 
view.setBackgroundResource(R.drawable.born_animation); 
AnimationDrawable drawable = (AnimationDrawable)view.getBackground(); 
assertTrue( drawable != null ); <= fails! it's null 
Run Code Online (Sandbox Code Playgroud)

结果是一样的.它返回null drawable.

任何希望都会受到高度赞赏,提前谢谢.

android android-animation

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

jquery添加删除类

我有4个锚点,我想在点击时向锚点添加一个当前类,并同时从其他3个类中删除该类.这是我的代码.我究竟做错了什么?

if ($("ul#thumb a").hasClass("current") {
    $("ul#thumb a").removeClass("current");
    $(this).addClass("current");
});
Run Code Online (Sandbox Code Playgroud)

我的HTML看起来像这样:

<ul id="thumbs">
    <li>
        <!-- intro page navi button -->
        <a id="t0" class="active" name="t0">The Company</a>

        <ul class="navi">
            <li><a style="display:none"></a></li>
            <li><a id="t1" name="t1">The Brief</a></li>
            <li><a id="t2" name="t2">The Solution</a></li>
            <li><a id="t3" name="t3">The Result</a></li>
        </ul>

    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

jquery class add

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

将PartialView转换为HTML

我只是想知道是否有可能转换

PartialView("_Product", model)
Run Code Online (Sandbox Code Playgroud)

HTML,所以我们可以用JSON发送回去?

return Json(result, JsonRequestBehavior.AllowGet);
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net-mvc json partial-views

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

以编程方式删除我的应用程序(Android)

我想在按钮点击时卸载我的应用程序.为此,我使用以下代码.

Uri packageURI = Uri.parse("package:"+packageName);
Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);
startActivity(uninstallIntent);
Run Code Online (Sandbox Code Playgroud)

它给了我结果,但我想直接删除而不点击对话框的"确定"按钮,并显示消息"此应用程序将被卸载".

我只想直接卸载应用程序.

android uninstall

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

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

启用安全辅助紧急模式

对我来说,实施和学习是一件非常有趣和新鲜的事情.我的申请有一些要求.为此,我搜索了很多,但找不到合适的,有价值的东西或链接.所以我在这里发帖子.功能是:

1)在三星设备中有Safety Assistance菜单,您可以在其中找到Emergency Mode选项.

2)现在Emergency mode我想在那时创建一个或多个主要联系人Emergency Mode.因此,现在在保持主页和音量按钮时,emergency将激活并通知通知.

3)现在emergency将在同一时刻激活GPS将自动启用,并且将自动捕获当前位置的两张照片,最后位置和两张照片将发送到Emergency mode作为主要联系人添加的联系人MMS.

注意:如果将启用录音机选项,则录音文件也将发送MMS.

所以,如果有人知道或有人实施,那么我非常感谢他/她.帮助将不胜感激.

android image-capture

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

如何禁用按钮单击?

在我的Android应用程序中,drawable文件夹中有许多图像.在我的布局中有两个按钮:后退和下一步按钮.在单击下一个和后退按钮时,2个不同的图像被加载到相同的布局上(所有图像都是通用的).

问题:我能够在下一个/后退按钮的点击上加载图像,但是在到达最后一个图像后,我想使我的下一个按钮禁用,并且后退按钮也是如此.当用户在第一张图像上时,应该禁用后退按钮.代码如下:

public class SequencerActivity extends Activity implements OnClickListener
    {
        private int imageCounter = 0;
        private ImageView imageLoader;

        private int[] imageList = {R.drawable.image_wo_lbl_0, R.drawable.image_wo_lbl_1, R.drawable.image_wo_lbl_2, R.drawable.image_wo_lbl_3, R.drawable.image_wo_lbl_4, R.drawable.image_wo_lbl_5,
                R.drawable.image_wo_lbl_6, R.drawable.image_wo_lbl_8, R.drawable.image_wo_lbl_9,R.drawable.image_wo_lbl_10, R.drawable.image_wo_lbl_11};
        @Override
        public void onCreate(Bundle savedInstanceState) 
        {
            setContentView(R.layout.parent_frame);//this one is the common parent layout for all image views
            super.onCreate(savedInstanceState);

            /*requestWindowFeature(Window.FEATURE_NO_TITLE);
            getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN);*/

            //int image1 = R.drawable.image_w_lbl_0;

            imageLoader = (ImageView) findViewById(R.id.imageLoader);
            //imageLoader.setImageResource(image1);

            ImageButton next = (ImageButton) findViewById(R.id.next);
            ImageButton back = (ImageButton) findViewById(R.id.back);
            next.setOnClickListener(this);
            back.setOnClickListener(this);
            //show the default image
            this.loadImage(imageList[imageCounter]); …
Run Code Online (Sandbox Code Playgroud)

android button

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

如何在android中处理Search View的后退按钮

SearchView searchView = (SearchView) MenuItemCompat.getActionView(menu.findItem(Menus.SEARCH));
searchView.setQueryHint(this.getString(R.string.search));
editSearch = (EditText) searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text);
editSearch.setHintTextColor(getResources().getColor(R.color.white));
searchView.setOnQueryTextListener(OnQuerySearchView);


private OnQueryTextListener OnQuerySearchView = new OnQueryTextListener() {

    @Override
    public boolean onQueryTextSubmit(String newText) {
        if (TextUtils.isEmpty(newText)) {
            listAllContact.clearTextFilter();
        } else {
            listAllContact.setFilterText(newText.toString());
        }
        return true;
    }

    @Override
    public boolean onQueryTextChange(String newText) {
        String text = editSearch.getText().toString()
                .toLowerCase(Locale.getDefault());
        adapter.filter(text);
        return true;
    }

};
Run Code Online (Sandbox Code Playgroud)

android searchview

11
推荐指数
2
解决办法
9652
查看次数