小编pal*_*tok的帖子

Android:如何将接口从一个活动发送到另一个活动

我有这样的界面:

public interface MyInterface {
    public void aMethod();
}
Run Code Online (Sandbox Code Playgroud)

我的自定义对象:

public class MyObject {

    private Context context;
    private MyInterface inter;

    public MyObject(Context context) {
        this.context = context;
        this.inter = (MyInterface) this.context;
        inter.aMethod();
    }
}
Run Code Online (Sandbox Code Playgroud)

主要活动:

public class MainActivity extends Activity implements MyInterface {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MyObject my = new MyObject(this);

    }

    @Override
    public void aMethod() {
        Toast.makeText(this, "done", Toast.LENGTH_SHORT).show();
    }
}  
Run Code Online (Sandbox Code Playgroud)

在MyObject构造函数中,我可以从上下文中获取接口,然后与Activity通信.

但是,如何将界面从一个活动发送到另一个活动?
我需要从Activity2调用Activity1中的方法
有这样的方法吗?

注意:我不想使用片段.

java android interface android-activity

25
推荐指数
1
解决办法
4万
查看次数

C++:指针向量在push_back()之后失去引用

在我的代码中,a有一个Node对象的全局向量和一个Node指针的局部向量:

#include<cstdio>
#include<cstdlib>
#include<vector>

using namespace std;

class Node {
    int n;

public:
    Node(int i) : n(i);
    int getN() { return n; }
};

vector<Node> v;

int main() {
    vector<Node*> p;
    v.push_back(Node(1));
    p.push_back(&v[0]);
    printf("first node id : %d\n", (*p[0]).getN());

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我将一个节点对象插入到全局向量中,并将该对象的指针插入到本地向量中.我上面代码的输出是:

first node id : 1
Run Code Online (Sandbox Code Playgroud)

但是,如果我将主要功能更改为:

int main()
{
    vector<Node*> p;
    v.push_back(Node(1));
    p.push_back(&v[0]);
    v.push_back(Node(2));
    p.push_back(&v[1]);
    printf("first node id : %d\n", (*p[0]).getN());

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

代码打印垃圾值:

first node id : 32390176
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚这个问题.vector插入后数据结构是否会更改每个对象的引用?我怎样才能解决这个问题 ?

c++ pointers vector

13
推荐指数
3
解决办法
6069
查看次数

Laravel 4:将发布请求重定向到不同的控制器方法

我有一个像下面的控制器,
MyController:

public function methodA() {
    return Input::get('n')*10;
}  

public function methodB() {
    return Input::get('n')*20;
}  
Run Code Online (Sandbox Code Playgroud)

我想根据POST值调用MyController中的方法.

routes.php文件

Route::post('/', function(){
    $flag = Input::get('flag');
    if($flag == 1) {
        //execute methodA and return the value
    } else {
        //execute methodB and return the value
    }
});
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点 ?

php laravel-4 laravel-routing

6
推荐指数
1
解决办法
3439
查看次数

java中的最佳文件I/O选项?

我是java新手,现在正在学习File io.但我对io非常困惑,因为有很多对象要处理它(FileReader,FileWriter,BufferedReader,BufferedWriter,FileInputStream,FileOutputStream ......可能还有更多).

我想知道File io最有效的过程是什么(我应该使用什么?).我不想要任何编码.我只想处理文本文件.任何简单的示例代码都将非常有用.

谢谢.

java file-io file

5
推荐指数
2
解决办法
774
查看次数

查找最大/最小连续XOR值

我有以下问题:给定一个整数数组(最大大小50000)我必须找到最大的X,这样,

X = a[p] ^ a[p+1] ^ ... ... ^ a[q] for some p,q (p<=q)
Run Code Online (Sandbox Code Playgroud)

另外,我必须找到X的最小值.

我试过这个过程,

sum[i] = a[0] ^ a[1] ^ ... ... ^ a[i] for some i .
Run Code Online (Sandbox Code Playgroud)

我在O(n)和中预先计算了它

那么某些人的X值p,q(p<=q)是,

X = sum[q] ^ sum[p-1]

MaxAns = Max of X for every pair of p,q (p<=q)

MinAns = Min of X for every pair of p,q (p<=q)
Run Code Online (Sandbox Code Playgroud)

但是这个过程是O(n ^ 2).

如果没有O(n ^ 2)算法,我怎么能这样做呢?

algorithm performance data-structures

5
推荐指数
0
解决办法
2115
查看次数

Android:可绘制的完美圆角

我正试着像下面那样画一个可绘画的在此输入图像描述:

我通过以下代码制作了这个:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="60dp"
    android:background="@color/white"
    android:padding="10dp"
    android:orientation="vertical">

<View
    android:layout_width="40dp"
    android:layout_height="match_parent"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:background="@drawable/bg_round_button_green"/>

<View
    android:layout_width="40dp"
    android:layout_height="match_parent"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:background="@drawable/bg_round_button_green"/>

<TextView
    android:layout_width="match_parent"
    android:layout_height="36dp"
    android:text="Text"
    android:textColor="@color/white"
    android:textSize="22sp"
    android:gravity="center"
    android:layout_centerVertical="true"
    android:background="@color/siam_green3"
    android:layout_marginLeft="20dp"
    android:layout_marginRight="20dp"/>

</RelativeLayout>  
Run Code Online (Sandbox Code Playgroud)

bg_round_button_green.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="ring">
    <solid android:color="#FF0DAB61"/>
</shape>  
Run Code Online (Sandbox Code Playgroud)

我也试过这个:
bg_round_button_green.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="#FF0DAB61"/>
    <corners android:radius="100dp"/>
</shape>  
Run Code Online (Sandbox Code Playgroud)

但它显示,
在此输入图像描述

是否可以使用单个形状绘制(不创建三个视图)?

android android-layout android-drawable

5
推荐指数
1
解决办法
2503
查看次数

唯一元素数组的最小间隔

如何找到整数数组的最小间隔,其中存在该数组的所有唯一元素.例如我的数组是:1 1 1 2 3 1 1 4 3 3 3 2 1 2 2 4 1最小间隔是从索引3到索引7.我正在寻找一个O(nlogn)或更少的算法(n < = 100000)

algorithm data-structures

4
推荐指数
1
解决办法
578
查看次数

ListView Adapter中的Android OnClickListener更改了另一行

我的列表视图是这样的(每行4个TextViews):

我点击了B1和D3

当我点击B1和D3时,它们变成了灰色(这很好!).
但是当我滚动时,我发现另外两个TextView也变成了灰色,尽管我没有点击它们.我没有点击B11和D13

我的自定义适配器是:

public class MyAdapter extends BaseAdapter {

private Context cont;
private int count;

public MyAdapter (Context c, int numberOfRow) {
    this.cont = c;
    this.count = numberOfRow;
}

@Override
public int getCount() {
    return count;
}

@Override
public Object getItem(int arg0) {
    return null;
}

@Override
public long getItemId(int position) {
    return 0;
}

@SuppressLint("NewApi")
@Override
public View getView(int position, View convertView, ViewGroup parent) {

    View v = convertView;

    if (v == null) {
        LayoutInflater inflater = (LayoutInflater) …
Run Code Online (Sandbox Code Playgroud)

android android-listview android-adapter

2
推荐指数
1
解决办法
4211
查看次数

PHP:为什么类构造函数不起作用?

我创建了Date()类.但它没有给出理想的输出.
我的代码

<?php
class Date{
    public $day = 1;
    public $month = "January";
    public $year = 2013;

    public function __construct($dy, $mon, $yar){
        $this->day = $dy;
        $this->month = $mon;
        $this->year = $yar;
    }
    public function lessthan($dt){
        if($year != $dt->year)
            return $year - $dt->year;
        if($month != $dt->month)
            return $month - $dt->month;
        return $day - $dt->day;
    }
    public function pr(){
        echo $day;
        echo "<br>";
        echo $month;
        return;
    }
}
$a = new Date(1,"January",2002);
$b = new Date(1,"January",2002);
$a->pr();
$b->pr();
echo "Hello";
?>
Run Code Online (Sandbox Code Playgroud)

它只输出 …

php

-3
推荐指数
2
解决办法
8272
查看次数