我有一张地图用于存储动态数据,这些数据一旦被创建就被丢弃(即使用;它们被快速消耗).它响应用户交互,因为当用户点击按钮时,地图被填充,然后数据用于做一些工作,然后不再需要地图.
所以我的问题是什么是更好的清空地图的方法?我应该每次都设置为null还是应该打电话clear()?我知道清楚是线性的.但我不知道如何将这个成本与每次创建地图的成本进行比较.地图的大小不是恒定的,因为它可能在创作之间从n到3n元素运行.
我有一个可绘制的形状,我想用作背景.我希望形状是透明的.但到目前为止还没有.我怎么做?这是我有的:
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"
android:padding="10dp"
android:shape="rectangle" >
<solid android:color="#80000000" />
<stroke
android:width="1dip"
android:color="#000000" />
<corners android:radius="10dp" />
</shape>
Run Code Online (Sandbox Code Playgroud)
我期望这条线<solid android:color="#80000000" />能做到这一点.
编辑:
在清单中,我设定android:theme="@android:style/Theme.Dialog".这可能是问题的原因吗?我基本上试图将这个观点置于另一个之上.更改为00或FF或其他任何不起作用.
我有一个Android应用程序,其中包含许多活动,以及一些特定的首选项文件.当用户退出我的应用时,我想删除所有共享首选项.明白我不能使用context.getSharedPreferences("A_PREFS_FILE", 0).edit().clear().commit(),因为只能清除一个特定的文件.我想清除与我的应用相关联的所有首选项文件.有没有办法做到这一点?
我有一个自定义AlertDialog,我想让它的背景完全透明.通常,要使活动完全透明,我会执行以下操作
#00000000在xml布局中设置背景
在活动的清单集中android:theme="@android:style/Theme.Holo.Dialog".
在onCreate中添加getWindow().setBackgroundDrawable(new ColorDrawable(0)).
但是现在我正在处理一个Dialog,我该如何实现透明度呢?
这是对话框代码:
LayoutInflater inflater = getLayoutInflater();
View dialoglayout = inflater.inflate(R.layout.activity_mine1,
(ViewGroup) findViewById(R.layout.mine1));
mine1 = new AlertDialog.Builder(this);
mine1.setView(dialoglayout);
mine1.show();
Run Code Online (Sandbox Code Playgroud)
我的xml只是一个带有其他子视图的relativeLayout:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00000000" >
...
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
注意:我已经在这里看了一些类似的帖子,但它们似乎没有用.
我的真正原因是我真正想要使用的背景不是矩形.我让它在一项活动中工作.但我想改用对话框.
编辑:
进一步玩,我有这个 style.xml
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="CustomDialog" parent="android:Theme.Holo.Dialog">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
我添加为
new AlertDialog.Builder(this, R.style.CustomDialog)
Run Code Online (Sandbox Code Playgroud) 在我的一个活动中,我的EditText视图过去看起来像这样

但现在他们看起来像这样

我需要帮助改变它:从矩形到下划线.
背景
因为我需要创建一个自定义ActionBar,所以我必须YesterdayActivity使用以下内容更改相关活动的主题
样式:
<style name="CustomWindowTitleBackground">
<item name="android:background">#323331</item>
</style>
<style name="CustomTheme" parent="android:Theme">
<item name="android:windowTitleSize">40dip</item>
<item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
</style>
Run Code Online (Sandbox Code Playgroud)
表现:
<activity
android:name="com.example.YesterdayActivity"
android:theme="@style/CustomTheme">
</activity>
Run Code Online (Sandbox Code Playgroud)
的onCreate:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.activity_yesterday);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.yesterday_title_bar);
…
}
Run Code Online (Sandbox Code Playgroud) 要获得视图相对于其父,我可以使用getLeft(),getRight(),getTop(),和getBottom().但是如何获得相对于布局文件最顶层父级的视图?所以说我的前夕布局是RelativeLayout.然后在前夕说我有许多嵌套布局.然后深入层次结构中我有一个EditText视图.如何获得关于前夕的EditText视图的位置?
有谁知道如何解决这个错误?我无法查看任务列表,并且任务列表窗口出现如上/下所述的错误。
Could not create the view: org.eclipse.mylyn.tasks.ui.views.tasks
Run Code Online (Sandbox Code Playgroud) 我正在使用paint在android中画一条虚线.
dashed.setPathEffect(new DashPathEffect(new float[] { 5, 5 }, 0));
Run Code Online (Sandbox Code Playgroud)
在开发过程中,图形布局视图中的所有内容都显示正常.但是当我插入一个真实设备时,该设备显示一条实线.起初我以为是因为我的设备都是LG.然后我测试了三星S4:同样的问题.有谁知道如何解决这种差异?图形布局说一件事并且没有实际的设备同意它是没有意义的.有什么建议?
我在我的drawable文件夹中有以下文件/drawable/mybkg.xml.我想给它充气,这样我就可以通过编程方式更改颜色.这可能在Android?
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="oval" >
<padding
android:top="5dp"
android:bottom="2dp"
android:left="2dp"
android:right="2dp" />
<solid
android:angle="270"
android:color="#1bd4f6" />
<stroke
android:width="2dp"
android:color="#121ce5" />
</shape>
</item>
<!-- Foreground -->
<item>
<shape android:shape="oval" >
<solid android:color="#1b90f6" />
</shape>
</item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)
我刚才看到一个叫做的课 LayerDrawable.有谁知道如何LayerDrawable通过编写代码或膨胀现有的xml 将我的xml文件转换为这样的文件 ?
我有一个ListView与许多项目(动物),具有不同的高度.使用OnScrollListener我试图跟踪哪个项目与屏幕上的特定位置相交.说有问题的位置是creatureMarkerBottom = 140.当我运行代码时,下面的代码似乎返回了错误的数据:我不断得到误报和漏报.这是代码.该代码应该使标记变为实心或透明,这取决于鸡是否与它交叉.然而,褪色并不能真正服从鸡是否接触到板/棒.我的猜测是我获取ListView像素位置的方式是错误的.
OnScrollListener listviewScrollListener = new OnScrollListener() {
int creatureLocationPixel[] = { 0, 0 };
int creatureMarkerBottom;
int creatureTop, creatureBottom;
int[] creatureLocationPixel = { 0, 0 };
View creatureView;
boolean creatureMarkerIsFaded = false;
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
try {
scrollBackgroundToFindCreature(visibleItemCount, firstVisibleItem);
} catch (Exception e) {
e.printStackTrace();
}
}
private void scrollBackgroundToFindCreature(int visibleItemCount, int index) {
creatureMarkerSlabView.getLocationOnScreen(creatureLocationPixel);
creatureMarkerBottom = creatureLocationPixel[1] …Run Code Online (Sandbox Code Playgroud) android ×8
transparency ×2
adt ×1
coordinates ×1
eclipse ×1
hashmap ×1
java ×1
layer-list ×1
layout ×1
map ×1
scroll ×1
tasklist ×1
xml-drawable ×1