几个星期前我已经上传了一个应用程序到商店.此应用程序涉及sqlite数据库,该数据库存储有关用户名,密码以及用户在本地使用应用程序时给出的其他详细信息的信息.
现在我有几个表和字段添加到数据库,并想将应用程序上传到Playstore作为更新?
我担心的是,如果用户从playstore更新应用程序 - 更新后 - 存储在数据库中的所有数据都将被保存,或者用户是否必须从头开始重新创建所有内容?
让我知道!
谢谢!
我正在尝试类似于Play商店的导航抽屉设计App:我已经让菜单部分工作正常,但我想在菜单顶部添加个人资料图片和用户ID,如下图所示.我不确定如何实现这一部分:

我尝试了以下代码并将其添加到xml中,其中包含要显示的项目列表.
<LinearLayout
android:id="@+id/LinearLayoutFrom1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="left|center"
android:background="@drawable/bg"
android:orientation="horizontal" >
<ImageView
android:id="@+id/clear1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/profilepic" />
<TextView
android:id="@+id/textViewName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="UserID"
android:textColor="#FFFFFF"
android:textSize="15sp"
android:textStyle="bold" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
但这只是为每个列表项添加背景和文本.
我如何实现上述设计?
更新1:
我在XML中尝试了以下内容:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<FrameLayout
android:id="@+id/framelayoutid"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<LinearLayout
android:id="@+id/LinearLayoutFrom1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bg"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/LinearLayoutFrom2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight=".20" >
<ImageView
android:id="@+id/clear1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/profilepic" />
</LinearLayout>
<LinearLayout
android:id="@+id/LinearLayoutFrom3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".80"
android:orientation="horizontal" >
<TextView
android:id="@+id/textViewName"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="UserID"
android:textColor="#FFFFFF"
android:textSize="15sp"
android:textStyle="bold" />
</LinearLayout> …Run Code Online (Sandbox Code Playgroud) 我的活动和操作栏中有一个列表视图,用于将活动设置为透明和向上导航.结果显示正常,但第一项显示在actionBAR下方.如下图所示:

下面是我用来使条形透明的代码:
getWindow().requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
ActionBar actionBar = getActionBar();
actionBar.setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
actionBar.setStackedBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setDisplayShowHomeEnabled(false);
setContentView(R.layout.invite_friends);
Run Code Online (Sandbox Code Playgroud)
invite_friends.XML for listView:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bluebackground"
android:orientation="vertical" >
<ListView
android:id="@+id/person_list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:divider="#b5b5b5"
android:dividerHeight="1dp"
android:listSelector="@drawable/list_selector" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
令人惊讶的是listview认为它是全屏的?如何解决这个问题?
谢谢!
我正在尝试仅提取联系人中可用的电子邮件联系人.现在我有一个解决方案,显示所有的联系人,如果选定的联系人没有电子邮件地址,它会吐司说没有找到电子邮件地址.相反,我想显示只有电子邮件地址的联系人.
这是我试过的查询:
Cursor cursor = null;
String emailid = "";
List<String> allids = new ArrayList<String>();
int emailIds = 0;
try
{
Uri result = data.getData();
String id = result.getLastPathSegment();
Log.e("Email","TRY"+emailid);
cursor = getContentResolver().query(Email.CONTENT_URI, null, Email.CONTACT_ID + "=?", new String[] { id }, null);
/*cursor = getContentResolver().query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null, ContactsContract.CommonDataKinds.Email.CONTACT_ID + " = ?",
new String[]{id}, null);*/
emailIds = cursor.getColumnIndex(Email.DATA);
if (cursor.moveToFirst())
{
while (cursor.isAfterLast() == false)
{
emailid = cursor.getString(emailIdx);
allids.add(emailid);
cursor.moveToNext();
}
}
else
{
//no results actions
}
} …Run Code Online (Sandbox Code Playgroud) 我从以下链接下载了闹钟示例:
https://github.com/android/platform_packages_apps_alarmclock
除了以下内容,我修复了大部分内容:
Alarms.java:第463行:Intent alarmChanged = new Intent(Intent.ACTION_ALARM_CHANGED); 错误:ACTION_ALARM_CHANGED无法解析或不是字段.
无法解决这个问题.搜索了大部分SO和Google群组.没有完美的解决方
我正在运行minSDK 9和目标18.
有人可以帮我解决这个问题吗?
谢谢!
我想在android中调整tabhost的大小.我知道它已被弃用,但这对我来说是一个很好的选择,因为我正在使用ListActivity和自定义游标适配器.如果这与Fragment Tabhost有关,我不是.
无论如何要调整标签高度:
我尝试了以下方法:
for (int i = 0; i < tabHost.getTabWidget().getTabCount(); i++)
{
tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = 80;
}
Run Code Online (Sandbox Code Playgroud)
它仅在少数手机中使用.有没有其他方法可以解决这个问题?
谢谢!
每当我按下后退按钮,显示dilog构建器时,我想完成()应用程序.
我有以下代码
private void displaydialog()
{
final LayoutInflater inflator = LayoutInflater.from(this);
final View settingsview = inflator.inflate(R.layout.nointernet, null);
final AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setIcon(R.drawable.reminderalert);
builder.setTitle("No Network...");
builder.setView(settingsview);
builder.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
startActivity(new Intent(android.provider.Settings.ACTION_SETTINGS));
dialog.dismiss();
}
});
builder.create().show();
}
Run Code Online (Sandbox Code Playgroud)
我不知道在哪里插入OnKeylistener和Key事件.有人可以指导我何时/如何插入监听器?
谢谢!
尝试使用RoundedDrawable类(从https://github.com/vinc3m1/RoundedImageView获取)插入并映像到Rounded图像.
图像来自URL.如果我使用Koushik dutta的ION库作为图像加载部分,我会收到以下错误:
09-27 21:35:06.187: E/AndroidRuntime(12606): FATAL EXCEPTION: main
09-27 21:35:06.187: E/AndroidRuntime(12606): Process: com.ylg.maps, PID: 12606
09-27 21:35:06.187: E/AndroidRuntime(12606): java.lang.ClassCastException: com.koushikdutta.ion.IonDrawable cannot be cast to android.graphics.drawable.BitmapDrawable
09-27 21:35:06.187: E/AndroidRuntime(12606): at com.ylg.otherlibs.RoudImageViewForMap.loadBitmap(RoudImageViewForMap.java:70)
09-27 21:35:06.187: E/AndroidRuntime(12606): at com.ylg.otherslibs.RoudImageViewForMap.onDraw(RoudImageViewForMap.java:80)
09-27 21:35:06.187: E/AndroidRuntime(12606): at android.view.View.draw(View.java:14465)
09-27 21:35:06.187: E/AndroidRuntime(12606): at android.view.View.draw(View.java:14350)
09-27 21:35:06.187: E/AndroidRuntime(12606): at android.view.ViewGroup.drawChild(ViewGroup.java:3103)
09-27 21:35:06.187: E/AndroidRuntime(12606): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2940)
09-27 21:35:06.187: E/AndroidRuntime(12606): at android.view.View.buildDrawingCache(View.java:13673)
09-27 21:35:06.187: E/AndroidRuntime(12606): at android.view.View.buildDrawingCache(View.java:13522)
09-27 21:35:06.187: E/AndroidRuntime(12606): at com.ylg.maps.Mapsthree.createDrawableFromView(Mapsthree.java:454)
09-27 21:35:06.187: E/AndroidRuntime(12606): at com.ylg.maps.Mapsthree.loadFriends(Mapsthree.java:417)
09-27 21:35:06.187: …Run Code Online (Sandbox Code Playgroud) 我试图在菜单操作附近显示图标,但出于某种原因,当我使用AppCompatActivity/AppCompat主题时,我无法显示它们.
我只得到文字.
我尝试了以下方法:
@Override
public boolean onMenuOpened(int featureId, Menu menu)
{
if(featureId == Window.FEATURE_ACTION_BAR && menu != null)
{
if(menu.getClass().getSimpleName().equals("MenuBuilder"))
{
try
{
Method m = menu.getClass().getDeclaredMethod("setOptionalIconsVisible", Boolean.TYPE);
m.setAccessible(true);
m.invoke(menu, true);
}
catch(NoSuchMethodException e)
{
Log.e("Menu:", "onMenuOpened", e);
}
catch(Exception e)
{
throw new RuntimeException(e);
}
}
}
return super.onMenuOpened(featureId, menu);
}
Run Code Online (Sandbox Code Playgroud)
还是一样 :(
这是菜单ITEMS(menu.xml):
menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context="com.ylx.tools.MainActivity">
<item
android:id="@+id/action_login"
android:icon="@drawable/ic_action_person"
android:orderInCategory="100"
android:title="@string/action_login"/>
<item
android:id="@+id/action_wishlist"
android:icon="@drawable/ic_action_favorite"
android:orderInCategory="100"
android:title="@string/action_wish"/>
<item
android:id="@+id/action_track_order"
android:icon="@drawable/ic_action_place"
android:orderInCategory="100"
android:title="@string/action_track"/>
<item
android:id="@+id/action_rate_the_app"
android:icon="@drawable/ic_action_important"
android:orderInCategory="100"
android:title="@string/action_rate"/> …Run Code Online (Sandbox Code Playgroud) 我有导航抽屉与自定义工具栏.我试图访问Fragment工具栏中的textView并在片段中设置文本.这有可能,如果是这样的话怎么样?
这是我的toolbar.xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/tools"
android:id="@+id/toolbar"
style="@style/ActionBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/backgroundcolor"
android:minHeight="?attr/actionBarSize"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" >
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/relativeLayoutID">
<TextView
android:id="@+id/toolbar_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center"
android:layout_centerVertical="true"
android:text="@string/register_title"
android:textColor="@color/blackText"
android:textSize="@dimen/text_size_medium" />
<ImageView
android:id="@+id/action_logo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="right|center"
android:contentDescription="@string/logo"
android:paddingRight="5dp"
android:src="@drawable/logoactionbar" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我想根据我点击的分段设置toolbar_title的文本.如何在Fragment中访问它们.
让我知道!
谢谢!
我有一个地址编辑文本和许多其他文本框,在请求时自动从DB填充数据.
在地址编辑文本中.我启用了多行.这里发生的是当用户开始输入时,从开头输入文本而不是从结尾输入.我不确定为什么会这样.
例如,如果我已经从DB填充了文本"79 Edge Drive".专注于地址后点击编辑 - 我现在输入内容.这是它的打字方式:"California79 Edge Drive"
我尝试了以下方法:
addText.requestFocus();
addText.setSelection(addText.length());
Run Code Online (Sandbox Code Playgroud)
不工作?还有其他能自动达到最后长度的东西吗?
我正在尝试同步build.gradle的Android磨损项目我收到以下错误.
Error:
uses-sdk:minSdkVersion 8 cannot be smaller than version 9 declared in library com.google.android.gms:play-services-wearable:5.0.77
Error:Execution failed for task ':mobile:processDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 8 cannot be smaller than version 9 declared in library com.google.android.gms:play-services-wearable:5.0.77
Run Code Online (Sandbox Code Playgroud)
这是否意味着如果我为API 18实现android服装以及更多,那么我将无法支持API 8手机?(我知道Android服装支持API 18及更多)
这很奇怪......
谢谢!
我用一个小按钮创建了android磨损活动(我的移动应用程序中的活动快捷方式).是否可以将捆绑请求发送到我的主应用程序?
如果是这样,如何实现点击监听器?
谢谢!