精华内容
下载资源
问答
  • 一、代码方式打开关闭界面: 1.打开新界面: /* 通过Modal方式打开新窗口 */ - (void)open{ //创建新窗口控制器 UIViewController *vc1 = [[UIViewController alloc] init]; vc1.view.backgroundColor = ...

    一、代码方式打开关闭界面:

    1.打开新界面:

    /*
     通过Modal方式打开新窗口
     */
    - (void)open{
        //创建新窗口控制器
        UIViewController *vc1 = [[UIViewController alloc] init];
        vc1.view.backgroundColor = [UIColor redColor];
        //通过Modal方式动画(从下向上)打开新UIViewController窗口
        [self presentViewController:vc1 animated:YES completion:^{
            NSLog(@"打开新窗口完成");
        }];
    }

    2.关闭当前界面:

    /*
     通过Modal方式关闭新窗口
     */
    - (void)close{
        //通过Modal方式动画(从上向下)关闭当前UIViewController窗口
        [self dismissViewControllerAnimated:YES completion:^{
            NSLog(@"关闭当前窗口完成");
        }];
    }

    二、storyboard方式打开关闭界面:

    1.选中Main.storyboard,然后拖动一个新的UIView Controller界面2到视图中。鼠标放在要点击跳转的控件上,按住Ctrl+鼠标左键拖线到新增的View Controller界面2,放开时会弹出菜单,选中"Modal",此时就实现了点击跳界面2的功能。

    三、界面之间传输数据:

    1.重写界面1的ViewController中prepareForSegue方法,拿到界面2的ViewController,并赋值:

    /*
     通过此方法给界面2传数据
     */
    - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
        //拿到界面2的控制器
        ViewController2 *control2 = segue.destinationViewController;
        //给界面2传值
        control2.extraData = @"这是传输的文本";
    }

    2.在界面2的ViewController的h文件中定义用于接收数据的成员变量,并在viewDidLoad中取出值,更新到UI上:

    //由上个界面传入的值
    @property (nonatomic, copy) NSString *extraData;
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        //打印界面1传过来的值
        NSLog(@"界面1传过来的值为:%@", self.extraData);
    }

     

    展开全文
  • 本文提供一个实现将自定义的界面显示在系统最顶层,达到锁定系统,禁止通过返回和home键关闭界面的解决方案。 在手机黑屏状态,触发报警后也能够弹出解锁界面。

    本文提供一个实现将自定义的界面显示在系统最顶层,达到锁定系统,禁止返回和home键关闭界面的解决方案。
    在手机黑屏状态,也能够弹出解锁界面

    1添加权限

    <!-- 系统窗口,显示在最顶层 -->
     < uses-permission android:name= "android.permission.SYSTEM_ALERT_WINDOW" />
    
    
    2创建界面布局文件lock_screen.xml
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#000000"
        android:orientation="vertical" >
    
        <TextView
            android:layout_width="match_parent"      
            android:layout_height="wrap_content"
            android:textColor="#ffffff"
            android:gravity="center"
            android:text="屏幕已锁定" />
    
        <Button
            android:id="@+id/btn"
            android:layout_marginTop="250dp"
            android:textColor="#ffffff"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="关闭界面" />
    
    </LinearLayout>



    3创建服务AppService
    Don't go for activity, because android will not show lock screen behind your activity for security reason, so use service instead of Activity.
    不要在activity中显示,由于安全原因,安卓系统不会在锁屏时候显示自定义的窗口,所以使用服务代替activity
    WindowManager 这个类能够实现系统级别的窗口。
    首先设置布局界面的属性
    关键是设置TYPE_SYSTEM_ERROR
    </pre><pre name="code" class="java">wm = (WindowManager) getSystemService(WINDOW_SERVICE);
    		// 设置lockScreenView视图的属性
    		// 属性TYPE_SYSTEM_ERROR:出现在任何界面的前面
    		mLayoutParams = new WindowManager.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT,
    				0, 0, WindowManager.LayoutParams.TYPE_SYSTEM_ERROR, WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
    						| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
    						| WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, PixelFormat.RGBA_8888);
    		LayoutInflater mInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    AppService.java完整代码
    /*
     *@author Dawin,2015-2-4
     *
     */
    package com.example.superlockscreen;
    
    import com.example.superlockscreen.R;
    
    import android.app.Service;
    import android.content.Context;
    import android.content.Intent;
    import android.graphics.PixelFormat;
    import android.os.IBinder;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.view.WindowManager;
    import android.widget.Button;
    
    /**
     * 实现界面锁定。禁止手机的任何按键操作
     * @author Dawin
     *
     *Don't go for activity, 
     *because android will not show lock screen behind your activity for security reason, 
     *so use service instead of Activity.
     */
    public class AppService extends Service
    {
    	private WindowManager.LayoutParams mLayoutParams;
    	private WindowManager wm;
    	private View lockScreenView;
    	private Button btn;
    
    	@Override
    	public void onCreate()
    	{
    		super.onCreate();
    		wm = (WindowManager) getSystemService(WINDOW_SERVICE);
    		// 设置lockScreenView视图的属性
    		// 属性TYPE_SYSTEM_ERROR:出现在任何界面的前面
    		mLayoutParams = new WindowManager.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT,
    				0, 0, WindowManager.LayoutParams.TYPE_SYSTEM_ERROR, WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
    						| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
    						| WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, PixelFormat.RGBA_8888);
    		LayoutInflater mInflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    		//绑定自定义界面
    		lockScreenView = mInflater.inflate(R.layout.lock_screen, null);
    		//获取界面的按钮
    		btn = (Button) lockScreenView.findViewById(R.id.btn);
    		btn.setOnClickListener(new View.OnClickListener()
    		{
    			@Override
    			public void onClick(View v)
    			{
    				// 关闭锁屏界面
    				removeViewFromWindow();
    			}
    		});
    		wm.addView(lockScreenView, mLayoutParams);
    	};
    
    	/** 关闭锁屏界面 */
    	public void removeViewFromWindow()
    	{
    		if (lockScreenView != null)
    			{
    				wm.removeView(lockScreenView);
    			}
    	}
    
    	@Override
    	public IBinder onBind(Intent intent)
    	{
    		return null;
    	}
    }
    

    4最后在Activity中绑定服务
    package com.example.superlockscreen;
    
    import android.app.Activity;
    import android.content.ComponentName;
    import android.content.Intent;
    import android.content.ServiceConnection;
    import android.os.Bundle;
    import android.os.IBinder;
    
    public class MainActivity extends Activity
    {
    	@Override
    	protected void onCreate(Bundle savedInstanceState)
    	{
    		super.onCreate(savedInstanceState);
    		// 绑定服务
    		Intent service = new Intent(this, AppService.class);
    		bindService(service, connServiceConnection, BIND_AUTO_CREATE);
    	}
    
    	private ServiceConnection connServiceConnection = new ServiceConnection()
    	{
    		@Override
    		public void onServiceConnected(ComponentName name, IBinder service)
    		{
    			// get Binder
    		}
    
    		@Override
    		public void onServiceDisconnected(ComponentName name)
    		{
    
    		}
    	};
    
    	// 解绑服务
    	protected void onDestroy()
    	{
    		super.onDestroy();
    		unbindService(connServiceConnection);
    	};
    }
    




    展开全文
  • Android向右滑动关闭界面(仿iOS)

    千次阅读 2016-09-14 16:51:57
    Android向右滑动关闭界面(仿iOS) SlidingClose 向右滑动关闭界面(仿iOS) 大概效果就是,Activity向右滑动,滑动超过屏幕的一半,就关闭,否则,恢复原来的状态。 项目地址:...

    Android向右滑动关闭界面(仿iOS)


    SlidingClose

    向右滑动关闭界面(仿iOS)
    大概效果就是,Activity向右滑动,滑动超过屏幕的一半,就关闭,否则,恢复原来的状态。

    截图


    源码解析

    配置透明主题

    要想Activity滑出屏幕后不遮挡下层Activity,需设置透明主题

    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <!--Required-->
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowAnimationStyle">@android:style/Animation</item>
    </style>

    添加后3条即可,当然直接用Android自带透明主题也是可以的。

    SlideLayout

    重写了FrameLayout,主要是处理滑动时的逻辑。

    public class SlideLayout extends FrameLayout {
        private Activity mActivity;
        private Scroller mScroller;
        /**
         * 上次ACTION_MOVE时的X坐标
         */
        private int mLastMotionX;
        /**
         * 屏幕宽度
         */
        private int mWidth;
        /**
         * 可滑动的最小X坐标,小于该坐标的滑动不处理
         */
        private int mMinX;
        /**
         * 页面边缘的阴影图
         */
        private Drawable mLeftShadow;
        /**
         * 页面边缘阴影的宽度默认值
         */
        private static final int SHADOW_WIDTH = 16;
        /**
         * 页面边缘阴影的宽度
         */
        private int mShadowWidth;
        /**
         * Activity finish标识符
         */
        private boolean mIsFinish;
    
        public SlideLayout(Activity activity) {
            this(activity, null);
        }
    
        public SlideLayout(Activity activity, AttributeSet attrs) {
            this(activity, attrs, 0);
        }
    
        public SlideLayout(Activity activity, AttributeSet attrs, int defStyleAttr) {
            super(activity, attrs, defStyleAttr);
            initView(activity);
        }
    
        private void initView(Activity activity) {
            mActivity = activity;
            mScroller = new Scroller(mActivity);
            mLeftShadow = getResources().getDrawable(R.drawable.left_shadow);
            int density = (int) activity.getResources().getDisplayMetrics().density;
            mShadowWidth = SHADOW_WIDTH * density;
        }
    
        /**
         * 绑定Activity
         */
        public void bindActivity(Activity activity) {
            ViewGroup decorView = (ViewGroup) activity.getWindow().getDecorView();
            View child = decorView.getChildAt(0);
            decorView.removeView(child);
            addView(child);
            decorView.addView(this);
        }
    
        @Override
        public boolean onTouchEvent(MotionEvent event) {
            switch (event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                    mLastMotionX = (int) event.getX();
                    mWidth = getWidth();
                    mMinX = mWidth / 10;
                    break;
                case MotionEvent.ACTION_MOVE:
                    int rightMovedX = mLastMotionX - (int) event.getX();
                    if (getScrollX() + rightMovedX >= 0) {// 左侧即将滑出屏幕
                        scrollTo(0, 0);
                    } else if ((int) event.getX() > mMinX) {// 手指处于屏幕边缘时不处理滑动
                        scrollBy(rightMovedX, 0);
                    }
                    mLastMotionX = (int) event.getX();
                    break;
                case MotionEvent.ACTION_UP:
                    if (-getScrollX() < mWidth / 2) {
                        scrollBack();
                        mIsFinish = false;
                    } else {
                        scrollClose();
                        mIsFinish = true;
                    }
                    break;
            }
            return true;
        }
    
        /**
         * 滑动返回
         */
        private void scrollBack() {
            int startX = getScrollX();
            int dx = -getScrollX();
            mScroller.startScroll(startX, 0, dx, 0, 300);
            invalidate();
        }
    
        /**
         * 滑动关闭
         */
        private void scrollClose() {
            int startX = getScrollX();
            int dx = -getScrollX() - mWidth;
            mScroller.startScroll(startX, 0, dx, 0, 300);
            invalidate();
        }
    
        @Override
        public void computeScroll() {
            if (mScroller.computeScrollOffset()) {
                scrollTo(mScroller.getCurrX(), 0);
                postInvalidate();
            } else if (mIsFinish) {
                mActivity.finish();
            }
            super.computeScroll();
        }
    
        @Override
        protected void dispatchDraw(Canvas canvas) {
            super.dispatchDraw(canvas);
            drawShadow(canvas);
        }
    
        /**
         * 绘制边缘的阴影
         */
        private void drawShadow(Canvas canvas) {
            // 保存画布当前的状态
            canvas.save();
            // 设置drawable的大小范围
            mLeftShadow.setBounds(0, 0, mShadowWidth, getHeight());
            // 让画布平移一定距离
            canvas.translate(-mShadowWidth, 0);
            // 绘制Drawable
            mLeftShadow.draw(canvas);
            // 恢复画布的状态
            canvas.restore();
        }
    }
    • bindActivity:绑定Activity的界面,这段代码很简单。
    • 通过重写onTouchEvent处理滑动逻辑。(注意,为什么不是重写dispatchTouchEvent或interceptTouchEvnet?)

    ACTION_DOWN:主要是记录了屏幕的宽度
    ACTION_MOVE:分两种情况,①view的x坐标为0,即初始状态,这时只能向右滑动,禁止向左滑动。②view的坐标大于0,即view的一部分已经划出屏幕(当然是向右滑)。这时,如果继续向右滑则不用多考虑;如果向左滑,就要假设view向左滑动了x后,如果view左边缘还在屏幕内,则可以继续滑动,否则,view左边缘可能已经滑出屏幕,这是我们不想看到的,因此我们直接把view滑动到(0,0)位置。
    ACTION_UP:手指释放后,如果滑动距离超过屏幕的一半,就关闭Activity,否则,恢复原来状态。

    • 这里用Scroller来处理手指释放后的滑动操作,本文中Scroller不是重点,因此不过多介绍。
    • 出于交互友好考虑,这里保留了屏幕最左边的一块区域不能滑动,即mMinX = mWidth / 10;
    • drawShadow:页面滑出屏幕后左侧添加阴影区域,增加层次感。在dispatchDraw中调用。

    SlideActivity

    继承自AppCompatActivity,作为滑动关闭Activity的基类,主要是做了绑定操作。

    public class SlideActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            SlideLayout rootView = new SlideLayout(this);
            rootView.bindActivity(this);
        }
    
        @Override
        public void startActivityForResult(Intent intent, int requestCode, Bundle options) {
            super.startActivityForResult(intent, requestCode, options);
            overridePendingTransition(R.anim.anim_enter, R.anim.anim_exit);
        }
    
        @Override
        public void finish() {
            super.finish();
            overridePendingTransition(R.anim.anim_enter, R.anim.anim_exit);
        }
    }

    startActivity和finish添加了滑动动画。

    我在这里遇到一个问题,设置透明主题后,在style中设置Activity切换动画无效,因此这里只好在代码中添加动画。知道原因的朋友还请不吝赐教。

    主要代码就这么多,这里考虑到了扩展性,因此使用是非常简单的。如果想要滑动关闭Activity,就设置透明主题,继承SlideActivity就可以了。

    License

    Copyright 2016 Chay Wong
    
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at
    
       http://www.apache.org/licenses/LICENSE-2.0
    
    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
    展开全文
  • android 3秒钟自动关闭界面(以支付成功为例),可选择自动关闭,也可以点击关闭。 /** * 支付成功页面 * @author Administrator *http://download.csdn.net/user/qq_29614465 */ /** * 3秒关闭后进入的界面 * ...

    功能如标题所示,看图说话,代码简单,注释清晰,一目了然:

    (下载整个项目代码,可到我的资源页下载:http://download.csdn.net/detail/qq_29614465/9341045)

                            


    3秒过后进入下一界面:

    PaySuccessActivity.java

    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.ImageView;
    import android.widget.TextView;
    /**
     * 支付成功页面
     *http://download.csdn.net/user/qq_29614465
     */
    public class PaySuccessActivity extends Activity {
        private ImageView im_back;
        private TextView tv_title;
        private TextView tv_paysuccess_time;//开始是3秒
        private ImageView im_paysuccess;//对号
        private Button b;
        private Boolean abc=false;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
            super.onCreate(savedInstanceState);
            setContentView(R.layout.paysuccess);
            im_back= (ImageView) findViewById(R.id.im_back);
            tv_title= (TextView) findViewById(R.id.tv_title);
            tv_title.setText("支付成功");
            tv_paysuccess_time=(TextView) findViewById(R.id.paysuccess_time);
            im_paysuccess= (ImageView) findViewById(R.id.paysuccess_im);
            im_paysuccess.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
           //点击成功后跳转到当前订单的界面
                    Intent intent = new Intent(PaySuccessActivity.this, AfterPayActivity.class);
                    startActivity(intent);
                    finish();
                    abc=true;
                }
            });
            CountDownTextViewHelper helper_pay=new CountDownTextViewHelper(tv_paysuccess_time, "0", 3, 1);
            helper_pay.setOnFinishListener(new CountDownTextViewHelper.OnFinishListener() {
                @Override
                public void finish() {
    // TODO Auto-generated method stub
                    if (abc==false) {
                        Intent intent2 = new Intent(PaySuccessActivity.this, AfterPayActivity.class);
                        startActivity(intent2);
                    }
                }
            });
            helper_pay.start();
        }
    }
    AfterPayActivity.java

    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    /**
     * 3秒关闭后进入的界面
     *http://download.csdn.net/user/qq_29614465
     */
    public class AfterPayActivity extends Activity {
        private Button btn;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            // TODO Auto-generated method stub
            super.onCreate(savedInstanceState);
            setContentView(R.layout.after_pay);
            btn=(Button) findViewById(R.id.button_close);
            btn.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                    finish();
                }
            });
        }
    }
    CountDownTextViewHelper.java

    import android.graphics.Color;
    import android.os.CountDownTimer;
    import android.util.Log;
    import android.widget.TextView;
    /**
     * 倒计时TextView帮助类
     * http://download.csdn.net/user/qq_29614465
     */
    public class CountDownTextViewHelper {
        // 倒计时
        private CountDownTimer countDownTimer;
        // 倒计时结束的回调接口
        private OnFinishListener listener;
        private TextView textView;
        /**
         *
         * @param textView
         *            需要显示倒计时的TextView
         * @param defaultString
         *            默认显示的字符串
         * @param max
         *            需要进行倒计时的最大值,单位是秒
         * @param interval
         *            倒计时的间隔,单位是秒
         */
        public CountDownTextViewHelper(final TextView textView,
                                       final String defaultString, int max, int interval) {
            this.textView = textView;
            // 由于CountDownTimer并不是准确计时,在onTick方法调用的时候,time会有1-10ms左右的误差,这会导致最后一秒不会调用onTick()
            // 因此,设置间隔的时候,默认减去了10ms,从而减去误差。
            // 经过以上的微调,最后一秒的显示时间会由于10ms延迟的积累,导致显示时间比1s长max*10ms的时间,其他时间的显示正常,总时间正常
            countDownTimer = new CountDownTimer(max * 1000, interval * 1000 - 10) {
                @Override
                public void onTick(long time) {
                    // 第一次调用会有1-10ms的误差,因此需要+15ms,防止第一个数不显示,第二个数显示2s
                    textView.setText(((time + 15) / 1000)
                            + "");
                    textView.setTextColor(Color.BLACK);
                    Log.d("CountDownTextViewHelper", "time = " + (time) + " text = "
                            + ((time + 15) / 1000));
                }
                @Override
                public void onFinish() {
                    textView.setEnabled(true);
                    textView.setText(defaultString);
                    if (listener != null) {
                        listener.finish();
                    }
                }
            };
        }
        /**
         * 开始   倒计时
         */
        public void start() {
            textView.setEnabled(false);
            countDownTimer.start();
        }
        /**
         * 设置倒计时结束的监听器
         * @param listener
         */
        public void setOnFinishListener(OnFinishListener listener) {
            this.listener = listener;
        }
        /**
         * 倒计时结束的回调接口
         */
        public interface OnFinishListener {
            public void finish();
        }
    }
    到这里就是全部的关键代码了,布局文件当然由你自己处理了,如果想

    下载整个项目代码,可到我的资源页下载:http://download.csdn.net/detail/qq_29614465/9341045   (下载页里的代码稍微旧一点,但保证都可以用。新一点的代码以博客里的为准。)
    也可以进入我个人资源中心,寻找其它可以帮到你的项目代码:http://download.csdn.net/user/qq_29614465

    展开全文
  • public void actionSubmit_actionPerformed(ActionEvent e) throws Exception { super.actionSubmit_actionPerformed(e); getUIWindow().close();//关闭当前界面 }
  • /************************imageprocessqt5.h*********...//这个文件就是用来定义与界面相关的类的 #include <QtWidgets/QMainWindow> #include<QtWidgets> #include "ui_imageprocessqt5.h" #pragma exec
  • 通过右上角的叉关闭图形界面后,程序运行的子线程却不会被自动关闭,依然留存在系统中 原因: 子线程没有正确关闭 解决方法: 1.将子线程设置成守护线程 self.your_thread = threading.Thread(target=self.tcp_...
  • case IDC_END: GetExitCodeProcess(pro_info.hProcess,&exitCode); TerminateProcess(pro_info.hProcess,exitCode); CloseHandle(pro_info.hThread); CloseHandle(pro_info.hProcess);...
  • 当前的命令默认会把日志输出到nohup.out文件中 ...增加参数,-XX:-UseGCOverheadLimit,关闭这个特性,同时增加heap大小,-Xmx1024m java -jar -XX:-UseGCOverheadLimit -Xmx2048m BKInsert.jar
  • 用记事本打开,在程序末尾加上@pause即可。
  • 所有的子界面都是动态生成的。 开发环境是2010. 界面A会随着应用自动打开。 界面B打开时,因为显示问题,所以需要把界面A关掉。此时会有两次闪烁,好像是界面B最大化,又还原那种效果。 如何能取消这样的现象呢...
  • 如上图所示,求解释! 我就运行MFC生成的exe文件,然后什么都没做,点击关闭按钮退出界面,结果就出现上图所示情况! ...运行exe文件时,从ini配置...关闭exe文件时,将界面上的数据保存到ini文件中,以及一些释放。
  • 3、关闭界面任在播放的问题: @Override public void onPause () { super .onPause() ; webView .onPause() ; webView .pauseTimers() ; } @Override public void onResume () { super ....
  • 开发是遇到一个问题,在一个Activity的启动模式...用startActivityforResult方法跳转要带回数据 , 在跳转到的界面setResult() 方法,然后关闭之后就带回数据了 ,数据就在onActivityResult方法里边的Intent参数 。
  • 在程序中加入 this.setDefaultCloseOperation(EXIT_ON_CLOSE); //关闭当前进程
  • Pyqt5 跳转界面关闭当前界面

    千次阅读 2018-11-13 20:46:06
    网上大部分教程都写的直接关闭界面,我摸索出来一个方法:同时绑定两个事件 例: #自己方法 self.registerButton.clicked.connect(self.register_re) #关闭界面 self.registerButton.clicked.connect(login....
  • ubuntu20.04 关闭图形界面

    千次阅读 2020-07-06 21:22:23
    ubuntu20.04 关闭图形界面
  • 许多朋友会发现,自己写的有登录界面的程序中,通过登录界面进入了操作界面,然而通过点击右上角关闭按钮关闭操作界面时,该项目的后台程序仍然存在。。。 造成这个问题的原因是在写程序过程中,首先写的是登录界面...
  • ubuntu16 关闭图形界面

    2020-06-15 20:09:31
    ubuntu16 关闭图形界面 关闭图形界面命令: systemctl disable lightdm.service 开启图形界面命令: ln -s /lib/systemd/system/lightdm.service /etc/systemd/system/display-manager.service
  • 网上已经有好多优秀的开源代码和项目,不过大部分都是结合ViewDragHelper来实现的,这里要讨论的是通过结合ValueAnimator来实现,目前我的控件只实现了从左往右(上往下)滑关闭界面。需求在界面上从左往右滑,View...
  • linux关闭图形界面

    千次阅读 2015-11-09 14:29:54
    1.在图像界面关闭x window: 1.1 shell中运行 init 3 进入文本模式,同时会关闭相关的服务(Xserver 肯定关闭) 1.2 Alt+Ctrl+F1~F6到字符界面,root登陆,ps aux|grep /usr/X11R6/bin/X,得到X进程号, kill -9 进程...
  • win10家庭版关闭锁屏界面的方法

    万次阅读 2020-11-22 13:13:45
    win10家庭版关闭锁屏界面的方法 安装win10后,发现开机多了一个锁屏界面。但是本人是台式机。。。而且吧锁屏以后半天打不开。。。所以这个界面对本人真的是完全彻底的鸡肋。个性化选项里也没有关闭锁屏的选项。上网...
  • linux 中关闭图形界面

    2017-11-12 22:37:00
    -、ubuntu中关闭图形界面 打开/etc/init/lightdm.conf这个文件,在第12行,将and runlevel [!06]改为and runlevel [!026],即可。如果需要进入图形界面,则运行starx命令即可。 二、redhat中关闭图形界面 打开/etc...
  • 在安卓项目中,当有多个Activity时,通过StarActivity方法带参数可以在... 于是,通过键值对容器动态添加Activity,然后根据key删除相对应的Activity就可以进行跨Activity来关闭界面了,具体代码下面贴出。 package co
  • ubuntu关闭图形界面

    千次阅读 2019-10-01 19:50:36
    # 关闭GUI >>> sudo systemctl stop lightdm.service # 开机不启动GUI >>> sudo systemctl mask lightdm.service # 恢复启动GUI >>> sudo systemctl unmask lightdm.service ...
  • HaDoop关闭图形界面

    2016-11-22 21:33:03
    简介:在虚拟机中运用hadoop时,默认开启图形界面。对于伪分布式而言,只有一个节点,计算机内存还吃得消。但如果是在一个电脑上创建多个虚拟机,且同时使用图形界面,那么计算机内存就吃不消了,所以建议使用命令行...
  • 由于我的ubuntu跑再虚拟机中,为了节省内存,就关闭图形界面 关闭用户图形界面,使用tty登录。  sudo systemctl set-default multi-user.target  sudo reboot 开启用户图形界面。  sudo systemctl set-...
  • 在winform 界面编程中,我们有时候要在主界面打开之前先显示登录界面,当登录界面用户信息校验正确后才打开主界面,而这时登陆界面也完成使命该功成身退了。 目前有两种方法可实现: 方法1. 隐藏登录界面 Program...
  • js监听界面关闭

    千次阅读 2018-11-09 15:48:47
    首次进入界面时执行下:  window.history.pushState('forward', null, './#forward')...可以在这里拦截到界面关闭了:( if (window.history &amp;&amp; window.history.pushState) { $(window).on(...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,824
精华内容 7,129
关键字:

关闭界面