小编ATE*_*TES的帖子

允许在android recyclerview中一次从不同的textview项中选择文本

一个Recyclerview中有很多Textview,长按可以选择每一个的文本内容,但是selection pin不允许从下一个TextView中选择test,它只允许在当前TextView中选择。如何允许包含不同 TextView 项目的溢出文本选择?

For exampe as seen on the picture below, TextView one is green, TextView two is purple, when selection start on green one the selection doesn't countinue to beyond the green one. 所以绿色和紫色的 TextViews 应该在某个时候是可选的。

(之后我应该得到选定的文本和它的 TextViews。)

在此处输入图片说明

java android android-layout android-recyclerview

9
推荐指数
1
解决办法
432
查看次数

Android中的WebView文本缩放问题

我在android中有一个文档阅读器项目.主要活动包括WebView.文本正在从html中读取.在"顶部选项"菜单中,包含一个用于动态增加文本大小的按钮(文本包装).到目前为止很清楚,但按下按钮时,文本大小有所增加,但所有文本都在屏幕上向下移动,两次按下按钮,文本大小增加,所有文本再次向下移动一点.这种情况真的让读者感到沮丧.读者必须在按下按钮后返回停止的位置,以便读者不会丢失阅读位置.如何解决这个问题呢?

问题:

问题:

解决问题时:

解决问题时:

我的WebView的Html内容:

<!DOCTYPE html>

    <head>
        <style type="text/css"> 
            p{} p.x1{} p.x2{} p.x3{} p.x4{} 
            h2.x1{} h2.x2{} h2.x3{} h2.x4{}
        </style>
    </head>

    <body>

        //paragraph-1
        <p class="x1">Title-1</p>
        <p class="x2">Title-2</p>
        <p class="x3">Title-3</p>
        <p class="x4">Title-4</p>
        <p>Text content.</p>


        //paragraph-2
        <h class="x1">Title-1</p>
        <h class="x2">Title-2</p>
        <p>Text content.</p>


        //paragraph-3
        <h class="x3">Title-1</p>
        <h class="x4">Title-2</p>
        <p class="x3">Title-3</p>
        <p>Text content.</p>


        //paragraph-4
        <h class="x2">Title-1</p>
        <p class="x3">Title-2</p>
        <p>Text content.</p>


        //...

    </body>

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

javascript java jquery android webview

8
推荐指数
1
解决办法
866
查看次数

Android WebView Word Wrapping 缩放文本内容

我正在使用 WebView 工具开发电子书阅读器 android projecd。我像捏一样缩放屏幕,屏幕文本大小正在增长但文本溢出屏幕,没有换行。怎么让文字环绕捏缩放屏幕,有没有什么重载的方法来解决这个问题?屏幕只有文本内容。例如:

在此处输入图片说明

java android webview

6
推荐指数
1
解决办法
795
查看次数

Javascript:RegExp 土耳其语字符问题

我正在研究 javascript 搜索功能。RegExp'\\b('+word+')\\b', 'ig'选择和获取位置设置好的字,但它只是选择英文字符没有选择土耳其字符或任何东西。

工作脚本:https : //jsfiddle.net/kv4jftcz/2/

不工作脚本:https : //jsfiddle.net/kv4jftcz/3/

html javascript jquery

6
推荐指数
1
解决办法
5842
查看次数

Android 在使用捏合缩放和临时图像调整文本大小时限制大小

我的静态布局上有文本,布局是 Recyclerview 中的一个项目。Recyclerview 类的触摸事件使用 ScaleGestureDetector 控制对文本的双指缩放。缩放场景是,当用户动作移动 Recyclerview 的屏幕时,获取 Recyclerview 的屏幕截图并将图像显示在 Recyclerview 上,并且用户缩放到图像。当操作启动时,将来自缩放的新文本大小应用到项目。新的文字大小应与缩放到图像时显示的文字大小相同。为此,我使用 RelativeSizeSpan 和浮点缩放器值。我想限制更改的总文本大小,但它不会发生。

在此处输入图片说明

真正的问题是,捏合缩放可以进行多次,并且有必要收集每个缩放比例,因为捏合缩放会将每个动作指针重置。(mScaleFactor = 1.0f) 并且所有缩放不应超过指定的限制。(MAX_ZOOM 和 MIN_ZOOM)

回收者观点:

private ScaleListener mScaleListener;
private ScaleGestureDetector mScaleGestureDetector;

@Override
public boolean onTouchEvent(MotionEvent event) {
    int action = event.getAction() & MotionEvent.ACTION_MASK;

    if(event.getPointerCount() == 2 && (action == MotionEvent.ACTION_MOVE || action == MotionEvent.ACTION_POINTER_UP)) {
        if(mScaleGestureDetector == null){
            mScaleListener = new ScaleListener(mRecyclerview, mContext);
            mScaleGestureDetector = new ScaleGestureDetector(mContext, mScaleListener);
        } return mScaleGestureDetector.onTouchEvent(event);

    }

}
Run Code Online (Sandbox Code Playgroud)

适配器:

private void changeTextSize(float mScaleFactor){
    ...
    float newFontSize = (relativeSizeSpan.getSizeChange() * …
Run Code Online (Sandbox Code Playgroud)

java android android-layout android-recyclerview

6
推荐指数
1
解决办法
310
查看次数

如何在BottomSheetDialogFragment内的ViewPager2上启用拖动?

BottomSheetDialogFragment在片段布局和打开STATE_EXPANDED模式上有一个很好的垂直拖动状态。它recyclerview里面有一个,垂直拖动可以在底部工作表上工作,但recyclerview由于滚动事件而无法工作。recyclerview当到达列表顶部并且仍然向上滚动以折叠底部工作表时,底部工作表拖动事件如何工作而不是滚动事件?

BottomSheetDialogFragment 层次结构:

FragmentRootLinearLayout -> ...BottomLinearLayout... -> ViewPager2 -> RecyclerView
Run Code Online (Sandbox Code Playgroud)

BottomSheetDialogFragment xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/BookInfoFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/tool_sheet_bg"
    android:orientation="vertical"
    app:layout_behavior="@string/bottom_sheet_behavior"
    app:behavior_hideable="true"
    android:clickable="true"
    android:focusable="true">

    <LinearLayout
        android:id="@+id/tabs_linear_layout"
        style="@style/ThemeSettingsRowContainer"
        android:layout_width="match_parent"
        android:layout_height="550dp"
        android:layout_marginTop="15dp"
        android:background="@drawable/xml_rounded_corner_bg2"
        android:clickable="true"
        android:focusable="true"
        android:paddingTop="0dp"
        android:paddingBottom="0dp">

        <com.google.android.material.tabs.TabLayout
            android:id="@+id/book_loading_tablayout"
            android:layout_width="match_parent"
            android:layout_height="50dp" />

        <androidx.viewpager2.widget.ViewPager2
            android:id="@+id/book_loading_viewpager"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:clickable="true"
            android:focusable="true" />

    </LinearLayout>

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

编辑:问题出在 ViewPager2 上,当我将其更改为 ViewPager 时,拖动效果很好。同样的问题:BottomSheet + ViewPager2 拖动隐藏不起作用

java android android-layout android-recyclerview

6
推荐指数
1
解决办法
352
查看次数

WinForm Richtextbox 深行距和字符间距

如何在winform中的richtextbox上编辑行间距和字符间距?我试过 PARAFORMAT2 但它不允许深度设置。我想像photoshop一样设置间距。例如;

间距示例

图中是三种不同的间距格式。如何设置图片中的1,2,3间距?

c# richtextbox winforms

5
推荐指数
1
解决办法
2699
查看次数

Android:未捕获的类型错误:对象函数 Array() { [native code] } 没有方法“from”

WebView使用 html 文件和getTopRow()从 html 文件调用javascript 方法的按钮。在jsfiddle 上工作但 android studio 抛出以下错误的方法:

04-03 22:23:39.437 28260-28260/com.site.project E/Web 控制台:未捕获的类型错误:对象函数 Array() { [native code] } 在 file:///android_asset/ 处没有方法“来自” zbe/zbe.html:9

JavaScript 方法:

function getTopRow(){
    var elements = document.querySelectorAll("p");
    var obj = null;
    window.onscroll = function() {
        if (obj != null) {
          obj.style.backgroundColor = "";
        }
        var top = Number.POSITIVE_INFINITY;
        Array.from(elements).forEach(function(o) {
        var t = o.getBoundingClientRect(o).top;
        if (t > 0.0 && top > t) {
          obj = o;
          top = t; …
Run Code Online (Sandbox Code Playgroud)

javascript jquery android webview jsfiddle

5
推荐指数
1
解决办法
1704
查看次数

通过解码Base64播放音频

我的数据库有很多简短的音频,这些音频格式化了base64。我要在单击按钮时播放音频。基本上,我写了这段代码,但是它不起作用。(如果可能,最好不要将文件写入存储,因为此过程会有延迟)

playButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        try{
            String url = "data:audio/mp3;base64,"+base64FormattedString;
            MediaPlayer mediaPlayer = new MediaPlayer();
            mediaPlayer.setDataSource(url);
            mediaPlayer.prepare();
            mediaPlayer.start();
        }
        catch(Exception e){
            e.printStackTrace();
        }

    }
});
Run Code Online (Sandbox Code Playgroud)

堆栈跟踪在这里:https : //gist.github.com/AliAtes/aa46261aba3d755fbbd1eba300356a5f

java android

5
推荐指数
1
解决办法
2099
查看次数

为什么透明图像在 Flutter 中看起来质量很差?

我有带有阴影的 png 图像。不存在图像不成比例缩放问题,缩放是根据宽高比进行的。

当我用于Image.asset()将图像放置在手机屏幕上时,它们的阴影看起来质量低且不柔和。

原始图像如下: http: //prnt.sc/p93vo2

Android 应用程序上的图像:https://prnt.sc/p93vz3

示例图像相同,均为 700x400、96dpi。您应该看到图像之间的质量差异。还有一个奇怪的情况。右侧和底部的阴影密度超过 Android 应用程序上原始图像的阴影。

我已经尝试过FilterQuality.high,但没有任何改变,如何解决?

mobile android ios dart flutter

5
推荐指数
1
解决办法
2141
查看次数

如何在Android中完全禁用上下文操作栏?

当选择低于 api v23 的文本时,没有任何工具栏,但显示上下文操作栏,以下代码无法禁用/删除。如何完全禁用/删除?

在此输入图像描述

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_read_book);

    getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
    getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN);
    getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
                    | View.SYSTEM_UI_FLAG_IMMERSIVE);
    getWindow().getDecorView().setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_IMMERSIVE  | View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                    | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION  | View.SYSTEM_UI_FLAG_FULLSCREEN);

    if (getSupportActionBar() != null) {
        getSupportActionBar().setHomeButtonEnabled(false);
        getSupportActionBar().setDisplayHomeAsUpEnabled(false);
        getSupportActionBar().setDisplayShowHomeEnabled(false);
        getSupportActionBar().setDefaultDisplayHomeAsUpEnabled(false);
        getSupportActionBar().setDisplayShowCustomEnabled(false);
        getSupportActionBar().setDisplayShowTitleEnabled(false);
        getSupportActionBar().setHomeButtonEnabled(false);
        getSupportActionBar().removeAllTabs();
        getSupportActionBar().setShowHideAnimationEnabled(false);
        getSupportActionBar().hide();
        getSupportActionBar().collapseActionView();
        getSupportActionBar().closeOptionsMenu();
        getSupportActionBar().setHomeAsUpIndicator(null);
    }
}
Run Code Online (Sandbox Code Playgroud)

我的应用程序主题:

<style name="MyAppTheme" parent="Theme.MaterialComponents.Light.NoActionBar">
    ...
    <item name="windowActionBar">false</item>
    ...
</style>
Run Code Online (Sandbox Code Playgroud)

编辑:

使用 CustomSelectionActionModeCallback 长时间单击我的 TextView 时打开一个特殊的菜单片段,并且我必须在 onCreateActionMode 方法中返回 true,因为为了避免在选择过程中取消选择,这样(返回 true)可以防止事件下降,但操作bar 正在开放 API 级别 23 及以下级别。

mTextViewItem.setCustomSelectionActionModeCallback(new ActionMode.Callback() {
    @Override
    public boolean onCreateActionMode(ActionMode …
Run Code Online (Sandbox Code Playgroud)

java android android-layout android-actionbar android-toolbar

5
推荐指数
1
解决办法
396
查看次数

WebView中的"android.view.InflateException:二进制XML文件错误膨胀类"错误

我的自定义WebView类发生错误: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ates.aaa/com.example.ates.aaa.MainActivity}: android.view.InflateException: Binary XML file line #9: Error inflating class com.example.ates.aaa.MyWebView

MyWebView:

public class MyWebView extends WebView {

    public MyWebView(Context context) {
        super(context);
    }

}
Run Code Online (Sandbox Code Playgroud)

主要活动:

MyWebView wv;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    wv = (MyWebView) findViewById(R.id.myWebView);
    wv.loadUrl("www.google.com");

}
Run Code Online (Sandbox Code Playgroud)

activity_main.xml中:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="16dp"
    android:paddingRight="16dp" >


    <com.example.ates.aaa.MyWebView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/myWebView" />


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

完整的堆栈跟踪:

04-06 11:50:46.267 8818-8818/com.example.ates.aaa D/dalvikvm: Late-enabling CheckJNI
04-06 11:50:46.283 8818-8818/com.example.ates.aaa W/dalvikvm: VFY: unable to find …
Run Code Online (Sandbox Code Playgroud)

java xml android webview android-layout

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