我开发了一个应用程序,我必须在其中显示 sd 卡中特定文件夹中的图像。我的代码工作正常,但它显示了所有的 SD 卡图像。我已经将选择参数作为我的文件夹名称,因为它已在以下帖子中 提到:使用网格视图显示 SDCard 上特定文件夹中的图像
但是,它没有奏效。请建议我如何做到这一点:下面我发布了我的代码。
public class Album1Activity extends Activity {
static Cursor imageCursor;
static int columnIndex;
GridView gridView;
Intent in;
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.grid);
String[] imgColumnID = {MediaStore.Images.Thumbnails._ID};
Uri uri = MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI;
imageCursor = managedQuery(uri, imgColumnID, null, null,
MediaStore.Images.Thumbnails.IMAGE_ID);
columnIndex = imageCursor.getColumnIndexOrThrow(MediaStore.Images.Thumbnails._ID);
gridView = (GridView)findViewById(R.id.gridview);
gridView.setAdapter(new ImageAdapter(getApplicationContext()));
gridView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position,
long id) {
String[] dataLocation = {MediaStore.Images.Media.DATA};
//String []dataLocation …Run Code Online (Sandbox Code Playgroud) 我已经使用了Chris Banes实现了拉动刷新列表视图的应用程序.问题是如果我将列表视图的可见性设置为已删除或不可见并使其在java代码中可见,则列表不会显示.另一方面,如果我将其可见性设置为可见或不设置其可见性,则每件事都可以正常工作.我的要求是我在同一个活动中有两个列表视图.我必须设置可见性,因为一旦从服务器获取数据,它将首先出现.另一个将出现在搜索功能上.我已将搜索结果列表视图的可见性设置为xml代码中的可见性,并且只有在获得搜索结果后才能将其显示.尽管对此列表视图使用了setVisibility(),但它从不显示屏幕.我也检查了服务器响应.它在logcat上显示搜索结果.
我在下面发布我的代码:
来自Activity的代码片段
//The result from this async task will populate the first list view
if(NetworkConnection.isOnline(MainCategory.this))
{
new MainMenuAsyncTask(dataUrl, MainCategory.this, listMainMenu, false).execute();
}
else
{
Log.v(TAG, "no network available");
SeattleNightLifeUtility.OpenWiFiDialog(MainCategory.this, getResources().getString(R.string.no_internet_msg));
}
loadListView();
//This will populate the list view that I have created for search results
_txtAutoSearch.setOnEditorActionListener(new TextView.OnEditorActionListener()
{
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event)
{
String term = _txtAutoSearch.getText().toString().trim();
if(! term.equals(""))
{
SeattleNightLifeUtility.hideSoftKeyboard(MainCategory.this, _txtAutoSearch);
if(NetworkConnection.isOnline(MainCategory.this))
{
search(term, false);
}
else
{ …Run Code Online (Sandbox Code Playgroud) 我的应用程序有闹钟功能。我的要求是在闹钟响起时播放自己的声音,但我无法做到这一点。仅当警报响起时才显示通知。我要播放的声音文件位于 Res 的 raw 文件夹内。下面我发布我的代码:
在我的活动课上:
Intent AlarmIntent = new Intent(getApplicationContext(), AlarmReceiver.class);
AlarmIntent.putExtra("Ringtone",
Uri.parse("getResources().getResourceName(R.raw.shankh_final_mid)"));
PendingIntent Sender = PendingIntent.getBroadcast(this, 0, AlarmIntent, 0);
AlarmManager AlmMgr = (AlarmManager)getSystemService(ALARM_SERVICE);
AlmMgr.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() +
(60 * 1000), (24 * 60 * 60 * 1000), Sender);
Run Code Online (Sandbox Code Playgroud)
在接收器类中:
public void onReceive(Context context, Intent intent) {
Intent in = new Intent(context, SnoozeEvent.class);
in.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent Sender = PendingIntent.getActivity(context, 0, in, PendingIntent.FLAG_UPDATE_CURRENT);
manager = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
notification = new Notification(R.drawable.icon, "Wake up alarm", System.currentTimeMillis());
notification.setLatestEventInfo(context, "Hanuman Chalisa", "Wake Up...", Sender);
notification.flags = …Run Code Online (Sandbox Code Playgroud) 在我的应用程序中,我使用的是SQLite数据库.在我的一个表中插入数据时,我遇到了奇怪的问题"SQLite异常:错误19".第一次插入数据但是,当我尝试再次插入数据时,它会抛出异常.
我的创建表查询:
"CREATE TABLE Tickets ("
+ "ID integer PRIMARY KEY NOT NULL,"
+ " UID varchar(40) NOT NULL DEFAULT 'not available'," + " OrderID int NOT NULL,"
+ " CarrierTicketNum varchar(15) NOT NULL,"
+ " TicketTypeID int NOT NULL," + " TankTypeID int NULL,"
+ " ProductObsGravity numeric NULL DEFAULT 0,"
+ " ProductHighTemp numeric NULL DEFAULT 0,"
+ " ProductLowTemp numeric NULL DEFAULT 0,"
+ " ProductObsTemp numeric NULL DEFAULT 0,"
+ " ProductBSW numeric NULL …Run Code Online (Sandbox Code Playgroud)