После некоторого запроса в IRC #libgdx функция Gdx.gl.glViewport( int x, int y, int width, int height )
была указана мне. Поэтому вам нужна только одна камера. Просто установите окно просмотра в левой части экрана, затем выполните команды рисования, затем настройте окно просмотра правой стороны экрана и снова нарисуйте. например:
@Override
public void render( float delta )
{
/*Wipe Screen to black*/
Gdx.gl.glClearColor( Color.BLACK );
Gdx.gl.glClear( GL10.GL_COLOR_BUFFER_BIT );
/*Left Half*/
Gdx.gl.glViewport( 0,0,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight() );
//Set up camera with viewport in mind
draw( delta );
/*Right Half*/
Gdx.gl.glViewport( Gdx.graphics.getWidth()/2,0,Gdx.graphics.getWidth()/2,Gdx.graphics.getHeight() );
//Set up camera again with other viewport in mind
draw( delta );
}
Вам просто нужно настроить камеру так, чтобы она позиционировалась и преобразовывалась на ограниченный экран так, как вы хотите, а не на весь экран. Вы также можете использовать вторую камеру.
UITableViewDelegate не нуждается в cell.delegate = self
.
Если у вас CustomTableCell есть ваш Custom Delegate
, вам нужно только назначить его. Итак, если у вас нет ant Custom Delegate
для вашего CustomTableCell
, удалите эту строку.
Для методов делегата tableView вы должны добавить это в viewDidLoad ():
yourTableView.delegate = self
yourTableView.dataSource = self
Или подключите его только с помощью StoryBorad
.
Ответа на этот вопрос: Как вы создаете делегат ячейки в классе CustomTableCell? Просто любопытно
CustomTableCell.swift:
// Custom protocol
protocol CustomCellDelegate: NSObjectProtocol {
// Protocol method
func someFunctionToPassSomeValue(name: String)
}
class CustomTableCell: UITableVieCell {
weak var delegate: CustomCellDelegate?
// Your class implementations and outlets..
//Call your protocol method in some action, for example in button action
@IBAction func buttonAction(sender: UIButton) {
delegate?.someFunctionToPassSomeValue(name: "anyStringValue")
}
}
Затем в классе ViewController
вам нужно назначить экземпляр пользовательской переменной делегата.
let cell = tableView.dequeueReusableCell(withIdentifier: "reuseIdentifier") as! CustomTableCell
cell.delegate = self
И реализовать метод протокола:
extension ViewController: CustomCellDelegate {
func someFunctionToPassSomeValue(name: String) {
print("Delegate is working. Value : \(name)")
}
}