小编Vel*_*jko的帖子

EditText在ListView中滚动时丢失内容

我有包含EditText的列表项,我不知道会有多少项.当我在EditText中输入一些文本,然后向下滚动ListView时,我有一个问题,在我再次向上滚动后,我的第一个EditText中没有文本,或者来自ListView的其他EditText中有一些文本.

我已经尝试过TextWatcher,并将数据保存到数组中,但问题是ListView中返回的视图位置并不总是正确的,所以我从数组中丢失了一些数据.-.-

如何在ListView中检测正确的视图位置?

例如:

如果我在ListView中有10个项目,目前只有5个项目可见.适配器返回位置从0到4 ......没关系.当我向下滚动项目6的位置是0 ... wtf?我从位置0的数组丢失数据:)

我正在使用ArrayAdapter.

请帮忙.

这是一些代码:

public View getView(int position, View convertView, ViewGroup parent) {

    tmp_position = position;

    if (convertView == null) {

        holder = new ViewHolder();

        LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = vi.inflate(R.layout.element_in_game, null);

        holder.scoreToUpdate = (EditText) convertView
                .findViewById(R.id.elementUpdateScore);

        holder.scoreToUpdate.addTextChangedListener(new TextWatcher() {

            @Override
            public void onTextChanged(CharSequence s, int start,
                    int before, int count) {
                scoresToUpdate[tmp_position] = s.toString();
            }

            @Override
            public void beforeTextChanged(CharSequence s, int start,
                    int count, int after) {

            }

            @Override
            public …
Run Code Online (Sandbox Code Playgroud)

android listview android-edittext

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

Libgdx屏幕上的gui(用于暂停按钮)

我正在开发游戏,需要在我的游戏画面之上使用一些GUI.像FrameLayoutAndroid中的东西.

我有GameScreen,一切都在发生.我现在想要的是添加一个"暂停"按钮,高分信息等.

我试图将一个Stage对象与常规精灵绘图结合起来.但是我在处理输入时遇到了一些问题:如果用户点击阶段中的暂停按钮,或者点击游戏区域(我应该添加一些子弹),如何管理...

有人可以为我清楚吗?

stage libgdx

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

TextView中的自动水平滚动

我有自定义画廊.图库表示框架布局的项目.它上面有一个imageView和textView.

如果textView中的文本太长,我需要它自动滚动.它是一行文本,需要水平滚动.

我发现了这段代码:

TextView
    android:text="Single-line text view that scrolls automatically"       
    android:singleLine="true" 
    android:ellipsize="marquee"
    android:marqueeRepeatLimit ="marquee_forever"
    android:focusable="true"
    android:focusableInTouchMode="true" 
    android:scrollHorizontally="true"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/>   
Run Code Online (Sandbox Code Playgroud)

它适用于我的测试应用程序,其中只有一个文本视图.但它在我的画廊中不起作用.注意到,文字只是保持不动.

有帮助吗?

android scroll gallery textview

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

libgdx sprite淡出

我正在开发LibGdx中的2D射击游戏.我必须提到我是LibGdx的新手,我正在努力理解它是如何工作的.我有几年Java和Android编程经验,所以我理解游戏概念.

我感兴趣的是有一种淡出精灵对象的方法.

我在屏幕上有敌人,当敌人死亡时,我想从我的列表中移除敌人对象并在计算和交叉逻辑中忽略它.

但是我希望敌人的精灵在屏幕上停留一段时间并慢慢淡出.

在LibGdx中有一个很好的方法来处理这个...或者我必须绘制一些额外的"淡出"帧......并在动画中处理它...

是否有内置功能支持这种东西?

Tnx很多!在我开始暴风雨之前,我需要有人为我清除这一点,并在绘制精灵时失去生命.

sprite fadeout libgdx

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

Android获得两个日期之间的毫秒差异

我有整数字段:

currentYear,currentMonth,currentDay,currentHour,currentMinute和nextYear,nextMonth,nextDay,nextHour,nextMinute.

我如何能够在几毫秒内获得这两个时间点之间的差异.我找到了一种使用Date()对象的方法,但这些函数似乎都被删除了,所以风险很小.

还有其他方法吗?

java android date

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

禁用焦点片段

我正致力于电视平台的应用,并使用RCU进行导航.

我有一个用例,我有两个碎片一个在彼此之上,同时在屏幕上可见.

有没有办法禁用下面的聚焦片段?片段视图上的setFocusable(false)不起作用,我可以将元素集中在下面的片段中.

提前致谢.

android focus fragment

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

通过视图android传递点击事件

我有框架布局:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="10dp" >

<LinearLayout
    android:id="@+id/widgetView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:layout_margin="10dp"
    android:gravity="center" >
</LinearLayout>

<LinearLayout
    android:id="@+id/widgetOverlayFrame"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:clickable="false" >
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

第一个布局包含窗口小部件布局,第二个布局是透明的,并且接收onLongClick用于拖动方法.这有效,问题是当我想要与窗口小部件交互时,点击某些内容,点击事件由overlayFrame拍摄.如何将click事件通过overlayFrame传递给widgetView?

编辑:

现在我正在尝试将GestureLister附加到overlayFrame LinearLayout,以某种方式看到代表单击和长按的MotionEvent之间的区别.我面临的问题是,手势监听器中的OnLongPress总是被调用,无论我做什么,单击还是长按.

这种行为有解释吗?TNX!

android click

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

在 Java 中解析之前单击网页元素

我正在尝试使用 DOM 解析器和jsoup解析 HTML 页面库。我面临的问题是:

在网站上有两个按钮显示两个不同的表格。我需要解析单击第二个按钮时显示的表格。单击第二个按钮后会设置不同的属性值。

当我做 Jsoup.connect("example.com")

我得到了第一个按钮被选中的响应,我不需要这些数据。

有没有办法点击第二个按钮,然后开始解析和检索网站的数据?

html java jsoup

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

Libgdx 贴花围绕自定义轴旋转

我正在使用 Libgdx 引擎和 3d 空间中的贴花的应用程序。现在我需要围绕 X、Y、Z 轴旋转贴花,但围绕 3d 空间中某处的自定义枢轴点。

我发现贴花有transformationOffset 字段,它可能适用于某些计算,但仅适用于Vector2。这意味着我只能在 X 和 Y 轴上移动枢轴点。当在 Y 轴上旋转贴花时,无论枢轴在哪里,结果都是一样的。

decal.transformationOffset = new Vector2(0, -5);

decal.rotateX(newValues[0]);
decal.rotateY(newValues[1]);
decal.rotateZ(newValues[2]);
Run Code Online (Sandbox Code Playgroud)

我也需要在 Z 轴上移动枢轴。

这个问题有什么解决方法吗?

天啊!

编辑:

我已成功在 3d 空间中的枢轴点上旋转贴花,但前提是枢轴和贴花的 Z 位置相同。如果他们不是,我就不会得到我所期望的。

这是适用于具有相同 Z 值的枢轴的代码:

decal.transformationOffset = new Vector2(pivotPosition.x - decal.getPosition().x, pivotPosition.y - decal.getPosition().y);
Tween.to(decal, DecalTween.XYZ_ROTATION, 5f).target(0, 360, 0).repeatYoyo(Tween.INFINITY, 0f).start(tweenManager);
Run Code Online (Sandbox Code Playgroud)

在补间我这样做:

target.setRotationX(0);
target.setRotationY(0);
target.setRotationZ(0);
target.rotateX(newValues[0]);
target.rotateY(newValues[1]);
target.rotateZ(newValues[2]);
Run Code Online (Sandbox Code Playgroud)

如何扩展它以使用和 Z 值作为枢轴。我正在尝试在旋转旁边添加和翻译动画来实现这一点,但结果很奇怪。

Tween.to(decal, DecalTween.MOVE_XYZ, 2.5f).target(decal.getPosition().x, decal.getPosition().y, pivotPosition.z - decal.getPosition().z).repeatYoyo(Tween.INFINITY, 0f).start(tweenManager);
    decal.transformationOffset = new Vector2(pivotPosition.x - decal.getPosition().x, pivotPosition.y - …
Run Code Online (Sandbox Code Playgroud)

rotation decal libgdx

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

私人应用存储中的Android列表文件

我正在开发Android应用程序,我需要保存和加载功能.

我希望使用此功能将重要数据保存在私有应用程序存储中:

public static void save(Object file, String fileName, Context context)
        throws IOException, FileNotFoundException {
    FileOutputStream fos = context.openFileOutput(fileName,
            context.MODE_PRIVATE);
    ObjectOutputStream oos = new ObjectOutputStream(fos);
    oos.writeObject(file);
    oos.flush();
    oos.close();
    fos.close();
    System.out.println(TAG + ": File saved successful!");
}
Run Code Online (Sandbox Code Playgroud)

我还写了加载数据的方法.这是有效的,因为我知道文件的确切名称.

我现在需要动态保存文件,动态生成名称.如何列出保存在pricate app存储中的文件?所以我可以加载一个?

android load save

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

Android TextView将文本显示为链接

我在我的应用程序中有TextView,我想将文本显示为链接.

我有"查看地图"字符串,我想将其显示为超链接(蓝色和下划线).

我正在尝试这个:

tvSeeMap.setText(getResources().getString(R.string.see_map));
    Linkify.addLinks(tvSeeMap, Linkify.ALL);
Run Code Online (Sandbox Code Playgroud)

但它不会起作用.

android hyperlink textview

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

Android从浏览器返回到应用程序

我在我的应用程序中有选项启动浏览器并加载imdb网站.我正在使用ActionView.

        Intent intent1 = new Intent(android.content.Intent.ACTION_VIEW,
                Uri.parse(website));

        try {
            activity.startActivity(intent1);
        } catch (Exception e) {
            Toast.makeText(activity, R.string.no_imdb, Toast.LENGTH_SHORT)
                    .show();
        }
Run Code Online (Sandbox Code Playgroud)

当我点按后退按钮时会出现问题.当默认浏览器应用程序启动时,一切正常.当Opera Mini应用程序启动时,当我点击后退按钮时,似乎我的应用程序收到两个后退动作,并完成我当前的活动.

怎么预防这个?

browser android

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

libgdx touchDown只调用一次

我是LibGdx的新手,并且输入处理有问题.

每当触摸失败时我的玩家需要射击子弹.但似乎这种方法只被调用一次......

然后用户必须再次点击以拍摄另一颗子弹.

点击停止时,我总是要射击子弹......

有没有办法处理这个用例?

libgdx

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