小编Bac*_*chi的帖子

Java:高效的ArrayList过滤?

我需要过滤一个ArrayList并删除找到的元素.作为一个相对较新的Java,我想知道最有效的方法是什么(重要的是因为它在移动设备上运行).目前我这样做:

// We display only top-level dealers (parentId=-10)
ArrayList<DealerProductCount> subDealers = new ArrayList<DealerProductCount>();
for (DealerProductCount dealer : wsResponse.Dealers) {
    if (dealer.ParentId != -10) subDealers.add(dealer);
}
wsResponse.Dealers.removeAll(subDealers);
Run Code Online (Sandbox Code Playgroud)

可以没有临时对象吗?也许通过直接操作(删除)迭代列表的元素?

java android arraylist

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

Android ListActivity - 如何在ListView下面添加视图?

我正在尝试将ListBa视图放在ListView的ListView下面.我希望它始终低于listView中的最后一行.

只要列表(在运行时由适配器填充)未超出屏幕,就会出现放置在LinearLayout中的ProgressBar.只要列表大于屏幕,ProgressBar就不再可见.

布局xml如下所示:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/db1_root"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<!-- Title bar -->
<LinearLayout
    style="@style/TitleBar" >
    <TextView
        style="@style/TitleBarText"
        android:text="Some title text" />
    <ImageButton
        style="@style/TitleBarAction"
        android:contentDescription="@string/description_search"
        android:src="@drawable/title_search" />
</LinearLayout>

<!--  Content -->
<LinearLayout
    android:layout_height="wrap_content"
    android:layout_width="fill_parent" >

    <ListView
        android:divider="@drawable/category_item_divider"
        android:dividerHeight="@dimen/list_divider_height"
        android:layout_height="wrap_content"
        android:id="@+id/android:list"
        android:layout_width="fill_parent"
        android:layout_weight="1" />        
    <TextView
        android:id="@+id/android:empty"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:text="@string/category_no_items" />                 
</LinearLayout>     

<!--  Progress bar -->
<LinearLayout
    android:layout_height="wrap_content"
    android:layout_width="wrap_content" >

    <ProgressBar
        android:id="@+id/productlist_progressbar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout> 

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

LinearLayout无法实现这一点吗?任何帮助赞赏.

android android-layout android-listview

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

Android xml形状drawable - 如何绘制u形式?

我需要创建一个xml形状drawable,绘制一个没有顶线的矩形("u-form").我能做的是绘制一个矩形,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >

<solid android:color="@color/detailrow_bg_normal" />

<corners
    android:bottomLeftRadius="0dp"
    android:bottomRightRadius="0dp"
    android:radius="1dp"
    android:topLeftRadius="10dp"
    android:topRightRadius="10dp" />

<padding
    android:bottom="2dip"
    android:left="1.5dip"
    android:right="1.5dip"
    android:top="8dip" />

<stroke
    android:width="1dip"
    android:color="@color/detailtable_border" />
Run Code Online (Sandbox Code Playgroud)

但是,如果可能的话,我可以在没有顶部(或底部)线的情况下定义相同的形状吗?

xml android shape

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

尽管图像正确为白色,但图像并未显示完全白色

对于启动画面,我使用的图像包含白色背景(纯白色 - 在Photoshop中检查).出于某种原因,它显示了一个轻微的绿色bg与活动的默认白色bg - 如屏幕截图所示.只在某些设备上,比如

尽管图像使用白色,ImageView图形现在显示白色背景

我将此作为单一视图添加到活动的框架布局中:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

<ImageView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:scaleType="fitCenter"
    android:src="@drawable/splashscreen" />

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

任何的想法?我读到了RGB888与RGB565问题,但找不到合适的解决方案.

注意:我确定可以将图像中的白色更改为透明,但更愿意了解问题并找到合适的解决方案.

rgb android colors

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

通过质询/响应来确保会话的每个请求?

我们需要设计一个安全的Web应用程序。我想提出一种会话处理机制,该机制不仅针对使用CRAM方法的登录过程,还针对每个请求进行质询响应。

原因是加强Web应用程序以防止会话劫持(例如,通过CSRF进行攻击)以及重放或中间人攻击。

建议在某些地方使用随机数,但在我们的Web应用程序中似乎不切实际,因为异步请求可以继续进行,或者用户可以打开新窗口,单击后退按钮等。

想法:客户端和服务器具有共享的机密(先前建立的用户密码),每个后续请求都基于该机密再次进行质询/响应,例如“响应=哈希(挑战+ hashedPassword)”。仅当对质询的响应匹配时,服务器才执行请求。与CRAM期间非常相似,但每个请求都在进行中。

问题:这是否可行?如果是这样,它肯定已经实施了,甚至是某种标准?我们如何在基于Java或php的webapp中使用它?

php java security web-applications

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