在Android中重新打开Spinner的活动

时间:2017-02-24 10:09:43

标签: java android android-intent android-spinner onitemselectedlistener

在消息应用中,在我的WriteMessageActivity中,我有一个微调器,可以选择谁可以看到我的消息。

我有三个选择   - 每个人都可以看到   - 我的朋友们   - 选择朋友

现在,当我从微调器点击SelectFriends时,它会打开ChooseContactsActivity。从那里我可以选择一些可以看到我的消息的朋友。

当我选择联系人时,我点击add button中的ChooseContactsActivity,然后将这些联系人传回WriteMessageActivity。它工作正常。

现在我遇到了一个小问题,在我选择好朋友之后,如果我想再次重新开启ChooseContactsActivity,我首先必须在微调器中选择其他两个选项中的一个( visible to everyonemy friends only),然后再次单击“选择好友”选项,我无法直接点击所选选项再次重新打开它。

微调:

vissibleToSpinner = (Spinner) findViewById(R.id.spinnerVissibleTo);
adapter = ArrayAdapter.createFromResource(this, R.array.spinner_vissible_to, R.layout.spinner_center_item);
adapter.setDropDownViewResource(R.layout.spinner_center_item);
vissibleToSpinner.setAdapter(adapter);
vissibleToSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
     ((TextView) parent.getChildAt(0)).setTextColor(Color.WHITE);
     ((TextView) parent.getChildAt(0)).setTextSize(14);
     ((TextView) parent.getChildAt(0)).setAllCaps(true);
     ((TextView) parent.getChildAt(0)).setAllCaps(true);

        switch (position) {
            case 0:
                mShowTo.setText("0");
                break;
            case 1:
                mShowTo.setText("-1");
                Toast.makeText(parent.getContext(), "Message will be visible to your friends only", Toast.LENGTH_SHORT).show();
                break;
            case 2:
                mShowTo.setText("TODO");
                Intent intent = new Intent(MessageActivity.this, ChooseContactsActivity.class); 
                startActivityForResult(intent, 1);
                break;
        }
    }

    @Override
    public void onNothingSelected(AdapterView<?> parent) {
        }
});

0 个答案:

没有答案