我需要一种方法来检测我的应用程序何时关闭,以便我可以告诉Web服务器清除它存储的会话变量.有没有办法做到这一点?
我有一个Android应用程序,当按下Home键时我希望它终止.期.我不希望它在后台运行.我只想让它终止.这样做的最佳方法是什么?
所以我有这个代码解决了java(android开发)中的二次方程式,它没有做任何事情!我按下按钮时根本没有给出答案...我甚至无法检查它是否正确.
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.support.v4.app.NavUtils;
public class QuadraticEquationSolver extends Activity {
public void main(String[] args){
Button calc = (Button) findViewById(R.id.Calculate);
calc.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
EditText X2 = (EditText)findViewById(R.id.X2);
EditText X = (EditText)findViewById(R.id.X);
EditText Num = (EditText)findViewById(R.id.Num);
TextView ans= (TextView) findViewById(R.id.finalans);
double x2 = Integer.parseInt(X2.getText().toString());
double x = Integer.parseInt(X.getText().toString());
double num = Integer.parseInt(Num.getText().toString());
double finalNum = ((x*-1) + (Math.sqrt((x*x)-(4*x*num))))/(2*x2);
ans.setText("answer: " + finalNum); …Run Code Online (Sandbox Code Playgroud) 简而言之,我正在尝试将一个片段包装在一个包装类中,然后将包装器添加到视图寻呼机中.我在以后运行应用程序时遇到空指针问题(而不是从片段继承,并将继承的片段添加到viewpager).
描述
基本上,我正在向viewpager添加片段,在添加片段之前,我一直在继承它,并将其包装在另一个视图中,在它周围添加一个边界(页面分割).
每个页面/片段都是一个不同的类,表示要显示的视图.
这种方法的问题是我需要扩展每个片段并添加相同的样板功能,这是不理想的.我也不想创建一个基类,比如说"boardered-fragment",因为当它们从它衍生出来时(然后片段)就会知道它们(我认为).
所以,我想我也许只会使用组合,我将创建一个通用的包装类,它将包含一个类型为T的片段数据成员.这个问题是我似乎无法获得当前活动的"活动" "引用片段数据成员的上下文(在包装器中组成).
我做了一些临时调整并隐藏了getActivity(),它返回了我手动存储的活动引用的副本.然而程序崩溃是随机的(我怀疑它会).我已经尝试在我的包装器中覆盖所有可能的生命周期方法,然后在内部将在数据成员片段上调用该生命周期方法
public override void OnSomething()
{
base.OnSomething()
mFragment.OnSomething()
}
Run Code Online (Sandbox Code Playgroud)
但这似乎没有帮助.我猜测因为组合片段是从当前活动上下文"隐藏"的,所以我需要手动完成所有必要的操作.我只是不确定它们都是什么?
这是我正在尝试完成的快速代码示例,详细说明如下.如果需要更多代码,请告诉我,我将调整我的示例格式.
组合(在整个app中有很多问题/空指针)
public class Frag1 : Fragment
{
...
}
public class Activity1 : Activity
{
public override void OnCreate(Bundle bundle)
{
...
List<Fragment> fragments = new List<Fragment>();
fragments.Add(FragmentWrapper.NewInstance(Activity, typeof(FragmentWrapper))
MyAdapter pagerAdapter = new MyAdapter(FragmentManager, fragments);
ViewPager viewPager = FindViewById<ViewPager>(Resource.Id.view_pager);
viewPager.Adapter = pagerAdapter;
}
public class FragmentWrapper
{
Fragment mFragment; // How to successfully wrap a fragment, but still behave properly ???? …Run Code Online (Sandbox Code Playgroud) android xamarin.android android-lifecycle android-fragments android-activity

逻辑继续Home Screen- > Screen1- > Screen2- > Screen3- > HomeScreen.
1.On按主页按钮的Screen3就会恢复Home Screen.同样在按下回车键的Home Screen它会转到Screen1然后Screen2和Screen3.
我现在好了Home Screen.如果我按回按钮它必须转到手机的主屏幕.相反,按下后退按键的顺序相反.我不想finish()在每个屏幕上调用活动.
给我一个解决方案!
我有一个激活,当它第一次加载时它会做一些OnCreate,我还需要在OnResume上运行,问题是它第一次进入活动它通过OnCreate和OnResume,如果我导航到另一个然后使用后退箭头返回到它只触发OnResume的活动,这很好,除非它在第一次运行活动时通过它,它导致它两次调用相同的东西.如果可能的话,如何避免第一次不调用OnResume()的活动?
我有一个活动,其中包含从异步HTTP请求接收的对象的视图.我正在使用EventBus向对象发布事件,并在活动中使用以下方法:
public void onEventMainThread(MyObjectEvent event) {
EventBus.getDefault().unregister(this);
showMyObject(event.getMyObject());
}
Run Code Online (Sandbox Code Playgroud)
以前,我在onCreate()方法中注册了activity的实例:
EventBus.getDefault().register(this);
Run Code Online (Sandbox Code Playgroud)
我知道Android中的Activity生命周期,我认为我使用EventBus的方式不对,因为我正在注册一个可能被Android破坏的实例.我并不热衷于注册具有此类行为的实例.
我可以使用每个onEvent()方法注册一个Application实例或一个对象,但我会编写一个God对象.
通过验证getStickyEvent(MyObjectEvent)为null然后注册活动,将是一个使用粘性事件的解决方案吗?如果不是null,我会注册活动.
我想知道在Android中使用带有视图的EventBus的最佳方法是什么.提前致谢 ;)
android asynchronous android-lifecycle android-activity greenrobot-eventbus
我已经阅读了有关活动生命周期的Android文档。但是,我对应用程序中不同活动的行为感到好奇。
从一些测试,我已经通过意图暂停活动的已完成,过渡从活动A到活动B在同一程序中通过onPause(),并创建活动B通过onCreate()。
奇怪的是,当活动B过渡回活动A时。
如果按下了硬件后退键,onPause()则对活动B onResume()触发,对活动A触发。这就是我所期望的。
但是,如果按下上的后退按钮ActionBar,onDestroy()则为活动A触发,然后按onCreate()和onResume()。
为什么会这样呢?
我需要停止Activity从去通过onCreate()一遍又一遍的方向改变时.
我在我的代码中添加了以下代码AndroidManifest.xml:
android:configChanges="orientation|keyboardHidden|screenSize"
Run Code Online (Sandbox Code Playgroud)
并添加了onConfigurationChanged()方法Activity,但onCreate()每次方向改变时它仍然会通过该方法...
我有一个android应用程序,我需要一个功能或任何广播接收器,可以检查应用程序是否关闭。.我不需要在每个活动中调用destroy(该应用程序中大约有20个活动)应用程序类中的功能
public class ApplicationLifeCycleManager implements ActivityLifecycleCallbacks {
/** Manages the state of opened vs closed activities, should be 0 or 1.
* It will be 2 if this value is checked between activity B onStart() and
* activity A onStop().
* It could be greater if the top activities are not fullscreen or have
* transparent backgrounds.
*/
private static int visibleActivityCount = 0;
/** Manages the state of opened vs closed activities, should be 0 or 1 …Run Code Online (Sandbox Code Playgroud) android android-lifecycle android-activity android-activitymanager