Android Oreo buildToolsVersion 提供了一种在 AppCompatTextView 中自动调整文本大小的简化方法,如下所示
<android.support.v7.widget.AppCompatTextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:maxWidth="300dp"
android:background="@android:color/holo_green_light"
app:autoSizeTextType="uniform"
app:autoSizeMinTextSize="5sp"
app:autoSizeMaxTextSize="50sp"
app:autoSizeStepGranularity="4sp"
/>
Run Code Online (Sandbox Code Playgroud)
AppCompatEditText 是否可以应用类似的实现,因为它基本上是 TextView 的扩展?简单地将 autoSizeTextType 应用于 AppCompatEditText 似乎不起作用。有没有办法解决这个问题?
以下是我设置旋转外观的方法.
我正在倾听动作并继续旋转图标,尝试计算旋转角度并将该旋转角度应用于封装edittext的整个布局.应用的旋转必须大约是封装相对布局的中心.
以下是我在touchListener for rotation图标中尝试实现此目的的方法.
if(v == ivRotateSticker){
//TODO grab xc and yc using (top and bottom)/2 and (left and right)/2 to grab center of sticker after each rotation
final float x = event.getX();
final float y = event.getY();
rlTextStickerLayout.getGlobalVisibleRect(myViewRect);
xc = myViewRect.width()/2;
yc = myViewRect.height()/2;
dx = scaleReceiver.getWidth() - myViewRect.width();
dy = scaleReceiver.getHeight() - myViewRect.height();
leftBound = scaleReceiver.getX();
topBound = scaleReceiver.getY();
switch (event.getAction()){
case MotionEvent.ACTION_DOWN:
mViewAngle = rlTextStickerLayout.getRotation();
mPrevAngle = Math.toDegrees(Math.atan2(x - xc, yc - y));
break;
case MotionEvent.ACTION_MOVE: …Run Code Online (Sandbox Code Playgroud) 我需要在任何字符串中使用单词"blank"替换多个连续重复的字符"_",这样This_is a test ___变为This_is一个测试空白.如果只有一个"_"字符,则不应替换它.
需要将多个连续下划线替换为空白,以便在android中读取字符串以进行文本到语音时,将发出单词空白.