Форум программистов, компьютерный форум, киберфорум
Наши страницы
Swift
Войти
Регистрация
Восстановить пароль
 
newlinerus
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 11
#1

Кеширование Новостной ленты - Swift

30.08.2017, 22:26. Просмотров 421. Ответов 4
Метки нет (Все метки)

Доброго времени суток! Есть приложение на Swift суть которого заключается в том, что приложение тянет по API новостные ресурсы (отсюда: https://newsapi.org/#apiSources ), выбирается ресурс к примеру CNN новости, далее отображается новостная лента данного ресурса т.е картинка, заголовок и сам текст новости, по желанию можно перейти на новости где на экране будет Картинка, ниже заголовок и текст новости (WebView не подходит)... ПРОБЛЕМА в том что доп. задание к этому приложению:

- Нужно сделать кеширование для новостей которые открывал пользователь, и подтягивать их, если нет интернета.
- Нужно сделать открытие картинки по тапу, с возможностью скейлить ее.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.08.2017, 22:26
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Кеширование Новостной ленты (Swift):

Кеширование картинок
Доброго времени суток. Подскажите как правильно организовать хранение и...

Программирование ленты новостей на iphone
Решил попробовать написать что то на ios, и задался целью написать для начало...

Объединить ленты новостей из VK и Twitter в одну
Здравствуйте, в своем приложении я хочу объединить ленты пользователя из двух...

Написание новостной ленты
Хочется написать небольшое приложение вроде того же стандартного "Новости" из...

Индексация новостной ленты
На сайте имеется новостная лента, в которой отображаются заголовки новостей и...

Шрифт вывода новостной ленты
Есть файл index.htm ... <body> <iframe id="ourframe"...

4
ExFau$t
520 / 475 / 101
Регистрация: 08.05.2012
Сообщений: 2,379
31.08.2017, 00:53 #2
- На счёт буквально кэширования не могу сказать, а так, я бы записал в coreData и периодически обновлял.
- Ну, например, повесить на ImageView GestureRecognizer и там менять размеры.
0
newlinerus
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 11
31.08.2017, 10:05  [ТС] #3
а каким образом обновлять данные? Каким то образом отслеживать открытые посты?

Добавлено через 7 минут

КОД НА SWIFT
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import UIKit
 
class ArticleViewController: UIViewController {
 
    @IBOutlet weak var ArticleViewImg: UIImageView!
    @IBOutlet weak var ArticleViewTitle: UILabel!
    @IBOutlet weak var ArticleViewDesc: UILabel!
    
    private var _article: Article!
    
    var article: Article{
        get{
            return _article
        } set{
            _article = newValue
        }
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        ArticleViewDesc.sizeToFit()
        ArticleViewDesc.numberOfLines = 0
        
        ArticleViewTitle.text = article.headline
        ArticleViewDesc.text = article.desc
        let url = article.imageUrl
 
        //picture load from url
        let ArticlePic = URL(string: url!)
        let data = try? Data(contentsOf: ArticlePic!)
        
        if let imageData = data {
            let image = UIImage(data: data!)
            ArticleViewImg.image = image
        }
        
 
 
    }
 
    
}
0
ExFau$t
520 / 475 / 101
Регистрация: 08.05.2012
Сообщений: 2,379
31.08.2017, 10:32 #4
В смысле? Ну вот пользователь зашёл в прогу, выбрал какую-то новость, ты проверил, в базе такой новости нет, подгрузил её, записал в базу. Если новость уже есть, то достаёшь её из базы. При достижении какого-нибудь срока жизни новости, ну например, неделя, очищаешь. Грубо говоря, чисто идею выложил.
0
noname_club
104 / 95 / 12
Регистрация: 01.05.2013
Сообщений: 600
31.08.2017, 12:51 #5
- Нужно сделать кеширование для новостей которые открывал пользователь, и подтягивать их, если нет интернета.
Подключаешь CoreData или NSUserDefaults, проектируешь БД сохраняешь в БД

- Нужно сделать открытие картинки по тапу, с возможностью скейлить ее.
либо компонент на GitHub искать, либо писать самому через UIScrollView + Zoom + NSLayoutConstraint ,можно в модальном контроллере.

и как бы это не было смешно, надо знать OBJC тоже, тк для него больше исходников на GitHub, он прозрачней работает с указателями.
1
31.08.2017, 12:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.08.2017, 12:51
Привет! Вот еще темы с решениями:

Из новостной ленты: 84% таблиц Excel ошибочны
84% таблиц Excel ошибочны. Читая это утром с чашкой кофе, по пути...

Создание новостной ленты на php и Mysql
Задача: создать новость ленту, в которую можно добавлять записи и выводить их....

ошибка при создании новостной ленты
Возникает ошибка Parse error: syntax error, unexpected T_STRING, expecting ','...

База данных для новостной ленты
Приложение должно выводить новостную ленту. То есть на всех устройствах лента...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru