Я работаю над Android-приложением, которое имеет два действия. Один из них - экран меню, а другой - тот, который пользователь фактически использует, когда они сделали выбор. Второе действие выполняет всю свою обработку в рабочем потоке. Когда я делаю выбор, чтобы перейти к второму действию, он «мигает» с активностью около 100 мс. Я нашел несколько журналов, которые выглядят так, будто они расскажут мне, что мне нужно исправить, если бы я знал, что они означают.Переключение активности не работает android
02-29 10:52:33.850: I/ActivityManager(1255): Starting activity: Intent { cmp=com.wcf.imageShare/.ImageShareActivity }
02-29 10:52:33.920: W/InputManagerService(1255): Starting input on non-focused client [email protected] (uid=10097 pid=24918)
02-29 10:52:33.936: W/WindowManager(1255): No window to dispatch pointer action
02-29 10:52:33.952: I/ActivityManager(1255): Displayed activity com.wcf.imageShare/.ImageShareActivity: 96 ms (total 96 ms)
02-29 10:52:34.000: W/WindowManager(1255): No window to dispatch pointer action 1
Сама программа не сбой, она просто возвращает меня в меню и снова отображает мои варианты. Вот код, я использую для переключения деятельности
lstServers.setOnItemClickListener(new OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
Beacon.activeServer = position;
Intent uploadIntent = new Intent(inst,ImageShareActivity.class);
inst.startActivity(uploadIntent);
}
});
инст держит «это» переменной активности, что код работает в, так как я не мог ссылаться на него, используя «это»
Здесь является OnCreate деятельности я пытаюсь переключиться:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try
{
progBar = (ProgressBar)findViewById(R.id.progressbar_Horizontal);
tv = (TextView)findViewById(R.id.prog_txt);
btnCancel = (Button)findViewById(R.id.cancel);
btnCancel.setOnClickListener(new OnClickListener()
{
public void onClick(View arg0)
{
try {
uploaderThread.interrupt();
Uploader.CancelUpload();
} catch (Exception e) {
e.printStackTrace();
}
}
});
uploaderThread.start();
}
catch(Exception e)
{
Log.d("Uploader ERROR",e.getMessage());
}
}
И, наконец, часть файла манифеста, который имеет дело с двумя видами деятельности.
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:debuggable="true">
<activity
android:name=".ImageShareActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
</activity>
<activity android:name=".ServerChoiceActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.SEND"/>
<data android:mimeType="image/*"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
</application>
Есть ли у кого-нибудь предложения или знать что-то, что мне не хватает?
Благодаря
Ник Длинные
Пожалуйста, объясните, почему -1.Who его парень? –
Это не сработает. Когда я пытаюсь, он не будет компилироваться. В этом случае переменная 'this' относится к моему OnItemClickListener, поэтому декларация uploadIntent не будет компилироваться. Затем, когда я изменил inst.startActivity (uploadIntent) на uploadIntent.startActivity(), он говорит, что метод не определен. – nick
@nick Я изменяю свой ответ. Попробуйте это. Создайте свое название деятельности вместо your_current_activity. –