小编Nat*_*Fig的帖子

自动缩放TextView文本以适应界限

我正在寻找一种最佳方法来调整包装文本的大小TextView,使其适合其getHeight和getWidth界限.我不是简单地寻找一种包装文本的方法 - 我想确保它既包装又小到足以完全适合屏幕.

我在StackOverflow上看到了一些需要自动调整大小的情况,但它们或者是非常特殊的黑客解决方案案例,没有解决方案,或者涉及TextView递归重新绘制,直到它足够小(这是内存密集并迫使用户观看文本逐步收缩每次递归).

但是我确信那里有人找到了一个很好的解决方案,不涉及我正在做的事情:编写几个重度例程来解析和测量文本,调整文本大小,然后重复直到找到一个合适的小尺寸.

TextView用于包装文本的例程是什么?难道不能以某种方式用来预测文本是否足够小?

tl; dr:是否有一种最佳实践方法可以自动调整大小TextView以适应,包裹,在其getHeight和getWidth范围内?

android scale word-wrap textview

811
推荐指数
18
解决办法
38万
查看次数

Android TextView setTextSize错误地增加了文本大小

这是TextView的扩展.getTextSize()setTextSize()没有被覆盖,我没有扩展这些方法.编程1.6,API级别4.

此代码中的循环导致每次迭代时大小乘以1.5,例如,如果大小最初从200读取getTextSize,则setTextSize(size)调用,getTextSize再次调用则读回300.

public void shrinkTest() {
    float size = this.getTextSize(); 
    while (size > 8) {
        this.setTextSize(size);
        size = this.getTextSize();
    }
}
Run Code Online (Sandbox Code Playgroud)

为什么是这样?

android pixels textview pixelformat

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

如何在Android中加入Spongy Castle JAR?

显然,Spongy Castle是使用完整版Bouncy Castle的Android替代品.

但是,在导入jar时我遇到了各种"无法解决"的错误,因为它依赖于Android不包含的软件包,主要是javax.mail,javax.activation和javax.awt.datatransfer.

那么最好的解决方法是什么?回答这个问题,表明不应该使用这些包,这个流行的问题甚至没有考虑找到一种方法来获得AWT.那么Spongy Castle如何依赖它们呢?人们正在使用Spongy Castle,对吧?

java android packages bouncycastle spongycastle

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

TabItem放置在布局XML中时如何使用?

TabLayout文件给出了嵌套的例子TabItem里面直接TabLayout像这样:

<android.support.design.widget.TabLayout
     android:layout_height="wrap_content"
     android:layout_width="match_parent">

    <android.support.design.widget.TabItem
         android:text="@string/tab_text"/>

    <android.support.design.widget.TabItem
         android:icon="@drawable/ic_android"/>

</android.support.design.widget.TabLayout>
Run Code Online (Sandbox Code Playgroud)

但它没有给出如何在实践中使用它的例子,TabItem的文档说:

此视图实际上并未添加到TabLayout,它只是一个虚拟对象,允许设置选项卡项的文本,图标和自定义布局.

那是TabItem为了什么?经过广泛的谷歌搜索后,我找不到任何人在XML中定义TabItems的例子.有没有办法在资源文件中使用TabItem设置选项卡式活动,如上所示?

android android-layout android-tabs android-tablayout

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

防止活动堆栈被还原?

当应用程序的进程被终止时,将保存其活动堆栈.然后,当重新启动应用程序时,我的所有活动都会恢复并运行为空指针.我宁愿让我的应用程序从基本活动开始,而不是尝试重新创建活动堆栈,而不是修改每个活动以适应此事件.

这可能吗?

我知道Intent.FLAG_ACTIVITY_CLEAR_TOP,但据我所知,只会在重新创建后杀死活动.

编辑:是clearTaskOnLaunch我想要什么?我已将其添加到我的默认活动中,但看不到任何效果.但即使我只是最小化应用程序,这也会扼杀我的活动,不是吗?如果整个过程重启,我宁愿只清除堆栈.

编辑2:不,这不是我想要的 - 一位Android工程师对如何使用ClearTaskOnLaunch的一些问题做出了彻底的回应:http://groups.google.com/group/android-developers/browse_thread/thread/da024bcaf4e1960f/ab1e2b35c360cb65 ?PLI = 1

android kill process activity-stack android-activity

26
推荐指数
1
解决办法
6385
查看次数

如果你不是浮动的话,会发生什么?

我假设这只返回一个int.还有什么事情我应该知道吗?C/C++的差异?

float a = 2.5;
!a; // What does this return? Int? Float?
Run Code Online (Sandbox Code Playgroud)

c c++ floating-point logic logical-operators

25
推荐指数
2
解决办法
3811
查看次数

Android软键盘调整大小布局

当虚拟键盘打开时,它会调整我的布局大小.如何将键盘放在我的布局上?它不会重新调整我的布局大小?

java xml android android-softkeyboard

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

Stash Git错误"致命:远程错误:需要CAPTCHA"

尝试使用以下命令从我的Stash项目中提取:

$ git remote add origin https://stash@stash.company.com/scm/~username/project.git
$ git pull origin develop
Run Code Online (Sandbox Code Playgroud)

我被提示输入密码,我输入密码然后得到以下错误:

您的Stash帐户已被标记为需要CAPTCHA才能解决,然后您才能再次登录.这通常是由于尝试使用不正确的密码登录太多而导致的.即使您正确输入密码,所需的CAPTCHA也会阻止您的SCM客户端访问Stash,直到它被解决.如果您当前通过浏览器登录Stash,则可能需要注销然后重新登录才能清除CAPTCHA.

注销并重新登录也无济于事.我该如何解决?

git bitbucket-server

19
推荐指数
7
解决办法
4万
查看次数

gcc编译的二进制文件给出"无法执行二进制文件"

我编译这个程序:

#include <stdio.h>

int main()
{
    printf("Hello World!");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

使用此命令:

  gcc -c "hello.c" -o hello
Run Code Online (Sandbox Code Playgroud)

当我尝试执行你好时,我得到了

bash: ./hello: Permission denied
Run Code Online (Sandbox Code Playgroud)

因为权限是

-rw-r--r-- 1 nathan nathan   856 2010-09-17 23:49 hello
Run Code Online (Sandbox Code Playgroud)

由于某些原因??

但无论如何......在更改权限并尝试再次执行之后,我得到了

bash: ./hello: cannot execute binary file
Run Code Online (Sandbox Code Playgroud)

我正在使用gcc(Ubuntu 4.4.3-4ubuntu5)4.4.3

我在这做错了什么?这是显而易见的......现在为时已晚,让我疲惫不堪的眼睛试图找出这个简单的问题....

PS我(有时)会做比Hello World更复杂的程序,但是gcc正在全面地做这个......

linux permissions binary gcc

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

是否可以从资产文件中获取最后修改日期?

奇怪的问题:是否有可能在资产文件夹中获取文件的最后修改日期,或者这是毫无意义和不可能的?

我问,因为我在应用程序启动时将一个只读数据库复制到数据文件夹中,但是如果现有文件比存储在assets文件夹中的文件旧(或者如果文件),则只会执行复制不存在).

如果那不可能,任何人都知道一个更好的约定?如果需要,我可以在一个单独的问题中发布.TIA!

sqlite android assets last-modified

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