- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我只是在做我的项目,但是当我测试我的应用程序时,我发现如果我使用多个手指触摸屏幕,我的应用程序可能会启动两个或三个不同的 Activity 。所有 Activity 都进入后台堆栈。这是Android框架中的错误吗?但是我无法重现这种情况,它只是发生了。
那么,你们遇到过这样的问题吗?请过来和我讨论。如果你这样做;谢谢。
供应:
这是我的 xml 文件,当我同时单击不同的 RelativeLayout 时,它发生了。
我今天下午试过了,但是这种情况已经不出现了。现在我很困惑。
<LinearLayout android:layout_width="match_parent"
android:orientation="vertical"
android:background="@color/appDefaultSingleBlockBackground"
android:layout_height="wrap_content">
<RelativeLayout android:layout_width="match_parent"
android:layout_height="100dp"
android:clickable="true"
android:background="@drawable/mine_bg"
android:id="@+id/mine_goto_personal_info_btn"
>
<TextView android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:id="@+id/mine_nick_and_avatar"
android:drawablePadding="10dp"
android:layout_marginLeft="15dp"
style="@style/TextTitle"
android:textColor="@color/appDefaultSingleBlockBackground"
android:text=""/>
<ImageView android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/venue_maxbutton"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_marginRight="15dp"
/>
</RelativeLayout>
<RelativeLayout android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/appDefaultSingleBlockBackground"
android:clickable="true"
android:id="@+id/mine_goto_interesting_venue"
>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:drawablePadding="10dp"
android:layout_marginLeft="15dp"
style="@style/TextNomal"
android:drawableLeft="@drawable/information_attentionbutton"
android:text="@string/myAtentionVenue"/>
<ImageView android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/venue_maxbutton"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_marginRight="15dp"
/>
</RelativeLayout>
<View android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@color/dividerdefault"
/>
<RelativeLayout android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/appDefaultSingleBlockBackground"
android:clickable="true"
android:id="@+id/mine_goto_setting"
>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:drawablePadding="10dp"
android:layout_marginLeft="15dp"
style="@style/TextNomal"
android:drawableLeft="@drawable/information_setbutton"
android:text="@string/setting"/>
<ImageView android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/venue_maxbutton"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_marginRight="15dp"
/>
</RelativeLayout>
<View android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@color/dividerdefault"
/>
<RelativeLayout android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/appDefaultSingleBlockBackground"
android:clickable="true"
android:id="@+id/mine_goto_youhuijuan"
>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:drawablePadding="10dp"
android:layout_marginLeft="15dp"
style="@style/TextNomal"
android:drawableLeft="@drawable/information_discountbutton"
android:text="@string/youhuijuan"/>
<ImageView android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/venue_maxbutton"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_marginRight="15dp"
/>
</RelativeLayout>
<View android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@color/dividerdefault"
/>
<RelativeLayout android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/appDefaultSingleBlockBackground"
android:clickable="true"
android:id="@+id/mine_goto_my_rest_money"
>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:drawablePadding="10dp"
android:layout_marginLeft="15dp"
style="@style/TextNomal"
android:drawableLeft="@drawable/information_balancebutton"
android:text="@string/myRest"/>
<ImageView android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/venue_maxbutton"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_marginRight="15dp"
/>
</RelativeLayout>
<View android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@color/dividerdefault"
/>
<RelativeLayout android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/appDefaultSingleBlockBackground"
android:clickable="true"
android:id="@+id/mine_goto_secure"
>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center_vertical"
android:drawablePadding="10dp"
android:layout_marginLeft="15dp"
style="@style/TextNomal"
android:drawableLeft="@drawable/information_accountssafebutton"
android:text="@string/secure"/>
<ImageView android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/venue_maxbutton"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_marginRight="15dp"
/>
</RelativeLayout>
<View android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/dividerdefault"
/>
</LinearLayout>
这是我的 java 代码。
private void init(View ret) {
final TextView txtAvatar = (TextView) ret.findViewById(R.id.mine_nick_and_avatar);
final RelativeLayout gotoPersonal = (RelativeLayout) ret.findViewById(R.id.mine_goto_personal_info_btn);
RelativeLayout gotoInterest = (RelativeLayout) ret.findViewById(R.id.mine_goto_interesting_venue);
RelativeLayout gotoSetting = (RelativeLayout) ret.findViewById(R.id.mine_goto_setting);
RelativeLayout gotoYouhuijuan = (RelativeLayout) ret.findViewById(R.id.mine_goto_youhuijuan);
RelativeLayout gotoMyRestMoney = (RelativeLayout) ret.findViewById(R.id.mine_goto_my_rest_money);
RelativeLayout gotoSecure = (RelativeLayout) ret.findViewById(R.id.mine_goto_secure);
gotoPersonal.setTag("gotoPersonal");
gotoInterest.setTag("gotoInterest");
gotoSetting.setTag("gotoSetting");
gotoYouhuijuan.setTag("gotoYouhuijuan");
gotoMyRestMoney.setTag("gotoMyRestMoney");
gotoSecure.setTag("gotoSecure");
try {
Object o = SharedPreferenceUtils.readInfo(mActivity, ConstData.UserInfo[1]);
if (o != null && !"null".equals(o)) {
txtAvatar.setText((String) o);
} else {
o = SharedPreferenceUtils.readInfo(mActivity, ConstData.UserInfo[10]);
if (o != null && !"null".equals(o))
txtAvatar.setText("KD" + o);
}
} catch (Exception e) {
}
Object o1 = SharedPreferenceUtils.readInfo(mActivity, ConstData.UserInfo[2]);
if (o1 != null)
MyApplication.downloader.download("http://" + o1, new ImageDownloadStateListener() {
@Override
public void loading() {
}
@Override
public void loadSuccess(Bitmap bitmap, String url) {
try {
bitmap = Tools.transforCircleBitmap(bitmap);
BitmapDrawable drawable = new BitmapDrawable(getResources(), bitmap);
gotoPersonal.measure(0, 0);
int measuredHeight = gotoPersonal.getMeasuredHeight();
LogHelper.print("==height" + measuredHeight);
drawable.setBounds(0, 0, measuredHeight / 5 * 4, measuredHeight / 5 * 4);
txtAvatar.setCompoundDrawables(drawable, null, null, null);
} catch (Exception e) {
//no nothing
}
}
@Override
public void loadFailed() {
}
});
gotoPersonal.setOnClickListener(this);
gotoInterest.setOnClickListener(this);
gotoSetting.setOnClickListener(this);
gotoYouhuijuan.setOnClickListener(this);
gotoMyRestMoney.setOnClickListener(this);
gotoSecure.setOnClickListener(this);
}
@Override
public void onResume() {
initActionBar();
super.onResume();
MobclickAgent.onPageStart(getClassName()); //统计页面
}
@Override
public void onPause() {
super.onPause();
MobclickAgent.onPageEnd(getClassName());
}
private String getClassName() {
String canonicalName = this.getClass().getCanonicalName();
String[] split = canonicalName.split("\\.");
return split[split.length - 1];
}
private void initActionBar() {
MyActivity activity = (MyActivity) mActivity;
activity.setActionBarLeftImg(new ColorDrawable(Color.TRANSPARENT), false);
activity.setActionBarRightImg(new ColorDrawable(Color.TRANSPARENT));
activity.setOnActionBarLeftClickListener(null);
activity.setOnActionBarRightClickListener(null);
activity.setActionBarTitle("个人中心");
}
@Override
public void onClick(View v) {
Object tag = v.getTag();
if (tag != null) {
String str = (String) tag;
if (mActivity == null) {
return;
}
if (!((MyActivity) (mActivity)).isLogin) {
Intent intent = new Intent(mActivity, LoginActivity.class);
startActivity(intent);
return;
}
if (!TextUtils.isEmpty(str))
if ("gotoPersonal".equals(str)) {
Intent intent = new Intent(mActivity, PersonalInfoActivity.class);
startActivity(intent);
} else if ("gotoInterest".equals(str)) {
Intent intent = new Intent(mActivity, VenueListActivity.class);
intent.putExtra("isInterests", true);
startActivity(intent);
} else if ("gotoSetting".equals(str)) {
Intent intent = new Intent(mActivity, SettingActivity.class);
startActivity(intent);
} else if ("gotoYouhuijuan".equals(str)) {
Intent intent = new Intent(mActivity, FavorableActivity.class);
startActivity(intent);
} else if ("gotoSecure".equals(str)) {
Intent intent = new Intent(mActivity, SecureActivity.class);
startActivity(intent);
} else if ("gotoMyRestMoney".equals(str)) {
Intent intent = new Intent(mActivity, MyRestActivity.class);
startActivity(intent);
}
}
}
最佳答案
您需要定义启动模式。 using the manifest file至少有两种方法可以解决这个问题(提示:singleTop)或使用 Intent 标志(提示:FLAG_ACTIVITY_SINGLE_TOP)。
祝你好运!
关于android - 如何避免 startActivity(new Intent()) 方法启动多个 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27701381/
我几天前开始进行android开发。我实现了一个 recylerview,在 recyclerview 适配器的 OnBindViewHolder 方法中,我在 recyclerview 项目上使用了
我已阅读文章https://github.com/Kotlin/anko/wiki/Anko-Commons-%E2%80%93-Intents . 我可以使用 startActivity(inten
我的 BroadcastReceiver 的 onReceive 函数中有以下代码。 public void onReceive(Context context, Intent intent) {
无论我做什么,我都无法开始新 Activity 。我重新下载了所有的Android SDK。我重新下载了Eclipse并再次安装了ADT插件 错误日志 09-16 17:53:51.537: W/II
我有以下 Activity ,当调用 startactivity() 时,应用程序被强制关闭,我已经搜索了几天失败的原因,有人可以帮助我吗? 应用程序: package com.example.dec
我是 Android 开发新手,在创建新 Activity 时遇到问题。 我想在开始之前使用我的 Activity 。例如,我已经尝试过: MyActivity menu = new MyActivi
在我的应用程序菜单类中,我想要一个按钮来启动 Activity 。这不适用于 StartActivity() 方法,因为它根本不是 Activity 的子类。那我该怎么办呢? 如果你读过《Beginn
我对 Android/Java 完全陌生。我正在尝试创建一个应用程序来连接到我的 TCP 服务器以从 mySQL 获取数据。 我有以下内容:MainActivity - 这是登录屏幕。输入用户名和密码
我刚刚开始 Android 开发,我被这段代码困住了: public class Home extends Activity { /** Called when the activity is
我有一个对话框提示用户确认删除。 在用户点击删除后弹出一个简单的警告。我需要重定向到一个新 Activity ,但在我有机会在确认警报上单击“确定”之前,startActivity 已触发。我在它搞砸
为什么要在服务中使用 startActivity()?如果我需要一个 Activity 必须调用一个 Activity ,如果我需要一个“延迟 Activity ”我必须使用通知。那么,我为什么要使用
引擎盖下发生了什么?这会以某种方式传递给操作系统,并且表明操作系统会找到正确的 Activity/Activity 并启动它?是否有在 Android 中运行的服务/库来处理这个?我正在尝试修改操作系
我有一个主类和一个单独的类 (OnClickBtn.java),我只想在其中保留按钮方法。我不想从主类而是从 OnClickBtn.java 开始新的 Activity 。 我已经运行了该程序,但它在
我正在学习 android 开发。这只是示例项目。所以我在按钮点击事件上创建了相同的 Activity (见代码)。在第一个 Activity 之后,我可以看到带有“qwerty”文本的新 Activ
我已经设置了一个从菜单按钮执行的 Activity 。 Activity 启动并短暂出现然后崩溃。我已将附加 Activity 添加到 list 文件。代码如下。我最近从 Eclipse 切换到 An
我试图从 OptionsMenu 启动一个 Activity ,但它没有启动。为什么? @Override public boolean onOptionsItemSelected(MenuItem
我创建了一个 activity( Activity 编号 1),其中包含 2 个 Views、一个 button 和一个 textView这两个 View 被共享到另一个activity(activi
截至今天上午,我已经尝试整合足够的知识来制作一个非常基本的应用程序来演示一个概念。这个想法是显示谷歌地图,用户按下他们想要添加标记的位置,然后弹出一个屏幕,他们可以在其中填写更多信息,然后当有人点击该
我正在制作一个绘图应用程序并想分享图像。但是,我遇到了 startActivity 部分的错误,其中错误写道 The method startActivity(Intent) is undefined
调用 startActivity 时,我一直收到 NPE,我认为这与我提供给 Intent 的上下文有关。当我从 Internet 获取 xml 数据时,我试图让启动画面保持不变。 splash Ac
我是一名优秀的程序员,十分优秀!